Age | Commit message (Collapse) | Author |
|
https://github.com/ruby/cgi/commit/1240fec9c9
|
|
This commit is to add an extra option to enable verbose mode (V=1) in the
generated `Makefile` at runtime of the Ruby to print compiler command lines by
the commands below when building native extensions. It's possible to enable the
verbose mode by setting the environment variable `MAKEFLAGS="V=1"`[1]
implemented in GNU make. However, I wanted to make a consistent user-interface
not depending on the specific make's implementation.
```
$ ruby /path/to/extconf.rb -- --with-verbose
```
You can also add the extra option via rake-compiler gem.
```
$ rake compiler -- --with-verbose
```
If the extra option is not given, the value of the
`RbConfig::CONFIG["MKMF_VERBOSE"]` enabled by the configure option below is
used.
```
$ ./configure --enable-mkmf-verbose
```
For the unit tests, updated the following files.
* The `test/mkmf/test_configuration.rb` was created to test the cases with the
`configuration` method and this implementation.
* Updated the `TestMkmf#assert_separately` to set the extra
arguments in `test/mkmf/base.rb`. Updated tests using the `assert_separately`.
* Added tests for `MakeMakefile#with_config` in the `test/mkmf/test_config.rb`.
[1] https://www.gnu.org/software/make/manual/html_node/Variables_002fRecursion.html
Fixes [Bug #19695]
Co-authored-by: Nobuyoshi Nakada <[email protected]>
Notes:
Merged-By: junaruga
|
|
preferred_dialog_height provided by Reline
(https://github.com/ruby/irb/pull/591)
https://github.com/ruby/irb/commit/df6907aca9
|
|
(https://github.com/ruby/reline/pull/541)
https://github.com/ruby/reline/commit/ad6faada3f
|
|
problem
(https://github.com/ruby/reline/pull/542)
* Provide preferred_dialog_height for dialog positioning
* Fix rendering test
|
|
- Use a smaller font size for the toggle symbol. (Currently, it seems a little too large)
- Use the child combinator (`>`) to unify selectors.
- Use `margin-left` instead of whitespace within the `content` property.
- Use `::` instead of outdated `:` for the pseudo-element symbol.
(See https://developer.mozilla.org/en-US/docs/Web/CSS/::before)
https://github.com/ruby/rdoc/commit/61ce0a7d75
|
|
- Use the `grid` property for the page layout.
- https://caniuse.com/css-grid
- Adjust the `<main>` margin.
- Make the sidebar responsive and resizable.
- https://caniuse.com/css-math-functions
- https://caniuse.com/css-resize
Note all modern browsers support the new CSS properties and functions used by this change.
https://github.com/ruby/rdoc/commit/2db5097c41
|
|
We can install RubyGems plugin by "gem install XXX". The installed
plugin is used from the NEXT "gem ...".
For example, "gem install gem-src kaminari" doesn't use gem-src plugin
for kaminari. "gem install gem-src && gem install kaminari" uses
gem-src plugin for kaminari.
How about loading a plugin immediately when the plugin is installed?
If this proposal is implemented, "gem install gem-src kaminari" works
like "gem install gem-src && gem install kaminari".
https://github.com/rubygems/rubygems/commit/4917d96f4c
|
|
|
|
https://github.com/ruby/benchmark/commit/6d51b10500
|
|
They have version.rb files with same directory.
But version.rb have been removed at https://github.com/ruby/ruby/pull/3375
There is no reason to locate under the library name of directory.
|
|
methods
This may have a performance penalty. We should benchmark this.
GitHub: fix https://github.com/ruby/csv/pull/260
Reported by Lhoussaine Ghallou. Thanks!!!
https://github.com/ruby/csv/commit/acc05116c5
Notes:
Merged: https://github.com/ruby/ruby/pull/7851
|
|
GitHub: fix https://github.com/ruby/csv/pull/258
Reported by Lhoussaine Ghallou. Thanks!!!
https://github.com/ruby/csv/commit/71e6d24e28
Notes:
Merged: https://github.com/ruby/ruby/pull/7851
|
|
(https://github.com/ruby/csv/pull/250)
Since PR #159, the minimum Ruby version is 2.5.0, a version which no
longer requires refinements for String#delete_suffix?, String#match? and
Regexp#match?.
Notes:
Merged: https://github.com/ruby/ruby/pull/7851
|
|
https://github.com/rubygems/rubygems/commit/33a02eec00
|
|
https://github.com/rubygems/rubygems/commit/413033198b
Co-authored-by: Eric Herscovich <[email protected]>
|
|
(https://github.com/ruby/irb/pull/589)
* Allow `show_source` for private methods
Fix https://github.com/ruby/irb/pull/577
* Pend tests on TruffleRuby
It seems `eval(..., __LINE__ + 1)` does not work.
Other similar tests are also pended on TruffleRuby, so I think it
is acceptable.
* Use `private_method_defined?` instead of `defined?`
|
|
|
|
https://github.com/ruby/syntax_suggest/pull/187 Handle if/else with
empty/comment
line
Reported in #187 this code:
```
class Foo
def foo
if cond?
foo
else
# comment
end
end
# ...
def bar
if @recv
end_is_missing_here
end
end
```
Triggers an incorrect suggestion:
```
Unmatched keyword, missing `end' ?
1 class Foo
2 def foo
> 3 if cond?
> 5 else
8 end
16 end
```
Part of the issue is that while scanning we're using newlines to determine when to stop and pause. This is useful for determining logically smaller chunks to evaluate but in this case it causes us to pause before grabbing the "end" that is right below the newline. This problem is similar to https://github.com/ruby/syntax_suggest/pull/179.
However in the case of expanding same indentation "neighbors" I want to always grab all empty values at the end of the scan. I don't want to do that when changing indentation levels as it affects scan results.
There may be some way to normalize this behavior between the two, but the tests really don't like that change.
To fix this issue for expanding against different indentation I needed a way to first try and grab any additional newlines with the ability to rollback that guess. In #192 I experimented with decoupling scanning from the AroundBlockScan logic. It also added the ability to take a snapshot of the current scanner and rollback to prior changes.
With this ability in place now we:
- Grab extra empties before looking at the above/below line for the matching keyword/end statement
- If there's a match, grab it
- If there's no match, discard the newlines we picked up in the evaluation
That solves the issue.
https://github.com/ruby/syntax_suggest/commit/513646b912
|
|
introduce history
AroundBlockScan started as a utility class that was meant to be used as a DSL for scanning and making new blocks. As logic got added to this class it became hard to reason about what exactly is being mutated when. I pulled the scanning logic out into it's own class which gives us a clean separation of concerns. This allowed me to remove a lot of accessors that aren't core to the logic provided by AroundBlockScan.
In addition to this refactor the ScanHistory class can snapshot a scan. This allows us to be more aggressive with scans in the future as we can now snapshot and rollback if it didn't turn out the way we wanted.
The change comes with a minor perf impact:
before: 5.092678 0.104299 5.196977 ( 5.226494)
after: 5.128536 0.099871 5.228407 ( 5.249542)
This represents a 0.996x change in speed (where 1x would be no change and 2x would be twice as fast). This is a 0.38% decrease in performance which is negligible. It's likely coming from the extra blocks being created while scanning. This is negligible and if the history feature works well we might be able to make better block decisions which is means fewer calls to ripper which is the biggest bottleneck.
While this doesn't fix https://github.com/ruby/syntax_suggest/issues/187 it's a good intermediate step that will hopefully make working on that issue easier.
https://github.com/ruby/syntax_suggest/commit/ad8487d8aa
|
|
The env var DEBUG does not work to produce detailed output. It is SYNTAX_SUGGEST_DEBUG. It was changed as part of the dead_end to syntax_suggest migration for Ruby 3.2
https://github.com/ruby/syntax_suggest/commit/c41da7aab7
|
|
(https://github.com/ruby/reline/pull/538)
https://github.com/ruby/reline/commit/1fb0753bc1
|
|
(https://github.com/ruby/irb/pull/576)
* Simplify each_top_level_statement, reduce instance vars
* Update lib/irb/ruby-lex.rb
Co-authored-by: Stan Lo <[email protected]>
* Remove unused ltype from TestRubyLex#check_state response
* Remove unnecessary const path of TerminateLineInput
* Combine duplicated code state check into method
---------
https://github.com/ruby/irb/commit/172453cec4
Co-authored-by: Stan Lo <[email protected]>
|
|
(https://github.com/ruby/irb/pull/584)
Check RUBY_PLATFORM for `darwin` and modify the mod key from `Alt` to
`Option`.
|
|
(https://github.com/ruby/irb/pull/583)
1. Make `RubyLex#set_input` simply assign the input block. This matches
the behavior of `RubyLex#set_prompt`.
2. Merge `RubyLex#set_input`'s IO configuration logic with `#set_auto_indent`
into `#configure_io`.
|
|
(https://github.com/ruby/irb/pull/567)
* Give show_doc its own command class
* Print deprecation warning for `help` command
|
|
https://github.com/rubygems/rubygems/commit/d9a003b4e7
|
|
|
|
|
|
https://github.com/rubygems/rubygems/commit/324139af8f
|
|
too much
(https://github.com/ruby/reline/pull/524)
* Do not render dialog where it overflows screen
* Dialog rendering should Scroll down only when needed
* Refactor screen_y_range calculation
Co-authored-by: Stan Lo <[email protected]>
---------
https://github.com/ruby/reline/commit/bc0e3d1310
Co-authored-by: Stan Lo <[email protected]>
|
|
This ensures only files from the root directory are chosen, in order to allow a clean build from outside the source directory.
https://github.com/ruby/rdoc/commit/f3b389aa9e
|
|
https://github.com/ruby/rdoc/commit/26136138aa
|
|
|
|
Also empty document of `Object`.
https://github.com/ruby/rdoc/commit/ce32a3102b
|
|
https://github.com/ruby/rdoc/commit/945f0cb3e9
|
|
Fixes https://github.com/ruby/rdoc/pull/1000
https://github.com/ruby/rdoc/commit/291e2b7e8b
|
|
(https://github.com/ruby/reline/pull/492)
* Rewrite dialog rendering
* Fix failing test of dialog with small screen
* Add multiple-dialog rendering test
* Add description comments for each part of render_dialog_changes
|
|
- Follow up RegexpLiteral at 9264d834215aa7ce14b0273032a7686c20141db9.
- Split the code to be generated so that `REGEXP` does not need
escapes.
- Use `REGEXP.match?` since support for Ruby 2.3 or earlier has been
dropped.
|
|
Fix https://github.com/ruby/rdoc/pull/995
https://github.com/ruby/rdoc/commit/1311ca8c50
|
|
Fix https://github.com/ruby/rdoc/pull/995
https://github.com/ruby/rdoc/commit/adfa7db5b9
|
|
(https://github.com/ruby/irb/pull/574)
`MagicFile` was introduced around v0.9.6, which was like 14~15 years ago.
It was needed because back then we needed to read a file's magic comment
to determine the encoding of it, and read it with that encoding.
Commit: 3ee79e89
But now we expect files to be encoded in UTF-8 and don't specify encoding
through magic comments anymore, `MagicFile` can be retired.
|
|
|
|
Fix https://bugs.ruby-lang.org/issues/19621
https://github.com/ruby/resolv/commit/7faaa78847
|
|
(https://github.com/ruby/irb/pull/571)
* Simplify Locale#load
Instead of loading file content with `MagicFile` and then evaluting it,
we can just use `Kernel.load` to load the file.
* Remove unused optional argument
* Remove unused Locale#require and #toplevel_load
|
|
(https://github.com/ruby/irb/pull/573)
`MagicFile` was introduced around v0.9.6, which was like 14~15 years ago.
It was needed because back then we needed to read a file's magic comment
to determine the encoding of it, and read it with that encoding.
Commit: https://github.com/ruby/irb/commit/3ee79e89adb8e21b63d796e53bcc86281685076d
But now both EN and JA's help-message file are UTF-8 and have removed the
encoding comment, we don't need to open them with `MagicFile` anymore.
|
|
|
|
(https://github.com/ruby/irb/pull/569)
We don't have to load another file to define the legacy encoding aliases
map because there's only one definition of it. We can define it in
locale.rb directly.
|
|
(https://github.com/ruby/irb/pull/568)
In https://github.com/ruby/irb/commit/3ee79e89adb8e21b63d796e53bcc86281685076d,
`encoding_aliases.rb` was introduced to return the correct encoding object for
`ujis` and `euc` encodings.
However, the return value of `@@legacy_encoding_alias_map[@encoding_name]`
is always overridden by a second look up with `Encoding.find(@encoding_name)`.
So the logic didn't work as expected.
This commit fixes the problem.
|
|
I previously left a comment stating I didn't know why a certain method existed. In investigating the code in `CaptureCodeContext#capture_before_after_kws` I found that it was added as to give a slightly less noisy output.
The docs for AroundBlockScan#capture_neighbor_context only describe keywords as being a primary concern. I modified that code to only include lines that are keywords or ends. This reduces the output noise even more.
This allows me to remove that `start_at_next_line` method.
One weird side effect of the prior logic is it would cause this code to produce this output:
```
class OH
def hello
def hai
end
end
```
```
1 class OH
> 2 def hello
4 def hai
5 end
6 end
```
But this code to produce this output:
```
class OH
def hello
def hai
end
end
```
```
1 class OH
> 2 def hello
4 end
5 end
```
Note the missing `def hai`. The only difference between them is that space.
With this change, they're now both consistent.
https://github.com/ruby/syntax_suggest/commit/4a54767a3e
|