Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into js
Browse files Browse the repository at this point in the history
  • Loading branch information
pmurias committed Nov 6, 2017
2 parents 1feebcb + e3f6aba commit c65ad93
Show file tree
Hide file tree
Showing 249 changed files with 10,635 additions and 3,841 deletions.
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE.md
@@ -0,0 +1,22 @@
<!--
The template below contains optional suggestions. If you cannot
provide some information, simply omit it.
-->

## The Problem

## Expected Behavior

## Actual Behavior

## Steps to Reproduce
<!-- Provide a set of steps to reproduce the problem.
If the program unexpectedly crashes, please run it with
`perl6 --ll-exception` and provide the produced output. -->

## Environment
* Operating system:
* Compiler version (`perl6 -v`):

2 changes: 1 addition & 1 deletion .gitignore
Expand Up @@ -66,7 +66,7 @@ perl6-js
perl6-js.bat
t/localtest.data
t/spec
t/packages
t/packages/tap-harness6
/panda
perl6.c
perl6.o
Expand Down
4 changes: 2 additions & 2 deletions .travis.yml
Expand Up @@ -19,7 +19,7 @@ addons:
packages:
# install toolchains
- gcc-6
- openjdk-7-jdk
- oracle-java8-installer

script:
- perl Configure.pl $RAKUDO_OPTIONS --moar-option=--cc=$(command -v gcc-6 >/dev/null 2>&1; if [ $? -eq 1 ]; then printf "gcc"; else printf "gcc-6"; fi)
Expand All @@ -28,7 +28,7 @@ script:

branches:
only:
- nom
- master
- /smoke-me/

notifications:
Expand Down
13 changes: 13 additions & 0 deletions CONTRIBUTING.md
@@ -1,3 +1,16 @@
# Filing Issues

## Potential bugs

Please include a way for developers to reproduce the problem. A small program
that demonstrates a problem is best.

Describe the behaviour you're observing and how it differs from expectations.
Include the version of the compiler you're using (run `perl6 -v`) as well as
the type and version of the operating system (e.g. `Windows 10`)

--------------------------------

# How to Contribute to Rakudo Perl 6

Contributions to Rakudo are very welcome.
Expand Down
6 changes: 4 additions & 2 deletions Configure.pl
Expand Up @@ -18,8 +18,10 @@
my $uclang = uc $lang;
my $win = $^O eq 'MSWin32';
my $slash = $win ? '\\' : '/';


# We don't use ExtUtils::Command in Configure.pl, but it is used in the Makefile
# Try `use`ing it here so users know if they need to install this module
# (not included with *every* Perl installation)
use ExtUtils::Command;
MAIN: {
if (-r 'config.default') {
unshift @ARGV, shellwords(slurp('config.default'));
Expand Down
2 changes: 1 addition & 1 deletion INSTALL.txt
Expand Up @@ -33,7 +33,7 @@

$ perl Configure.pl --gen-moar --gen-nqp --backends=moar # Moar only
or:
$ perl Configure.pl --gen-nqp --backends=jvm # needs JDK 1.7 installed
$ perl Configure.pl --gen-nqp --backends=jvm # needs JDK 1.8 installed
then:
$ make

Expand Down
6 changes: 3 additions & 3 deletions README.md
Expand Up @@ -21,7 +21,7 @@ text file.

## Building and Installing Rakudo

[![Build Status](https://travis-ci.org/rakudo/rakudo.svg?branch=nom)](https://travis-ci.org/rakudo/rakudo) [![Build status](https://ci.appveyor.com/api/projects/status/github/rakudo/rakudo?svg=true)](https://ci.appveyor.com/project/rakudo/rakudo/branch/nom)
[![Build Status](https://travis-ci.org/rakudo/rakudo.svg?branch=master)](https://travis-ci.org/rakudo/rakudo) [![Build status](https://ci.appveyor.com/api/projects/status/github/rakudo/rakudo?svg=true)](https://ci.appveyor.com/project/rakudo/rakudo/branch/master)

See the INSTALL.txt file for detailed prerequisites and build and
installation instructions.
Expand Down Expand Up @@ -52,7 +52,7 @@ https://github.com/MoarVM/MoarVM manually and install them individually.

### Configuring Rakudo to run on the JVM

Note that to run Rakudo on JVM, JDK 1.7 must be installed. To automatically
Note that to run Rakudo on JVM, JDK 1.8 must be installed. To automatically
download, build, and install a fresh NQP, run:

perl Configure.pl --gen-nqp --backends=jvm
Expand Down Expand Up @@ -117,7 +117,7 @@ Rakudo, its components, and the Perl 6 language specification.
If you have a patch that fixes a bug or adds a new feature, please
create a pull request using github's pull request infrastructure.

See [our contribution guidelines](https://github.com/rakudo/rakudo/blob/nom/CONTRIBUTING.md) for more information.
See [our contribution guidelines](https://github.com/rakudo/rakudo/blob/master/CONTRIBUTING.md) for more information.

## Line editing and tab completion

Expand Down
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
2017.08
2017.10
2 changes: 1 addition & 1 deletion appveyor.yml
Expand Up @@ -19,7 +19,7 @@ configuration:
# Monitored branches
branches:
only:
- nom
- master
- /smoke-me/

# To stop automatic build of VS solution files
Expand Down
213 changes: 213 additions & 0 deletions docs/ChangeLog
@@ -1,3 +1,216 @@
New in 2017.11:
+ SPECIAL NOTES:
+ Security:
+ Deprecations:
+ Fixes:
+ Additions:
+ Removals:
+ Build system:
+ Efficiency:
+ Internal:

New in 2017.10:
+ SPECIAL NOTES:
+ This release includes fixes to || alternation in :ratchet
mode. Code that was unintentionally relying on buggy behavior
(backtracking in :ratchet mode) may now produce unwanted
results (namely will fail to match) [963a0f06]
+ Security:
+ Restricted dynamic lookup metasyntax in rx EVAL [1d63dfd2][2448195d]
+ Deprecations:
+ Deprecated .new on native types [9d9c7f9c][cc6c0558]
+ Deprecated :buffer `open` arg in favor of :out-buffer [f9c10c21]
+ Fixes:
+ Fixed Hash.perl to include Scalar indicators [47d6c66e]
+ Fixed :delete with lazy Arrays [0385b2aa]
+ Fixed sanitization of on-demand Supplies [93a66d75]
+ Fixed duplicate done/quit messages [9e179355]
+ Fixed non-blocking `react { await blah() }` [29863a0b]
+ Fixed issues with Int.new [dff7d9b2][0d2ca0d7][0834036d]
+ Fixed isa method on a subset [cee1be22]
+ Fixed Supply.zip to eager-shift its values [f9400d9a]
+ Fixed two utf8-c8 bugs [963a0f06]
+ Fixed infinite loop in .^roles of a class that does Rational [0961abe8]
+ Changed uniname to give better strings for non-unique names [9dba498f]
+ Fixed .push-all/.skip-all on SlippyIterators [41896b7b]
+ Fixed and improved `**` regex quantifier [681d6be9][4ca1fc3c]
+ Made cmp-ok to try harder to give useful description [8479a1ba]
+ Made List.ACCEPTS non-fatal for lazy iterables [1b9638e2]
+ Fixed some unspace parsing cases [11070e0f]
+ Fixed &chdir failing to respect :CWD attribute [4906a1de]
+ Fixed Blob.gist to trim its guts to 100 elements [ac8e5f43]
+ Improved .perl and .gist methods on Maps and Hashes [aad8991e]
[39461368][381c4c3b]
+ Fixed explosion in IO::CatHandle.nl-out [83008443]
+ Fixed .pick and .roll on object hashes [12fcece4]
+ Made cmp-ok take its arguments raw [3684384d]
+ Fixed `is default(Mu)` on attributes [54507ac9]
+ Made Array.List fill holes with Nil [e1351219]
+ Fixed BagHash.grab with large values [975fcf6c]
+ Fixed .tail with large values [43e7b893]
+ Improved .gist of nodal methods [b6982e68][bb1df2cb]
+ Fixed IO::Pipe.close not always returning the Proc [74328278]
+ Fixed handling of type objects in set operators [8a88d149]
+ Fixed location of errors coming from Channel [82a38c29]
+ Fixed lockup when scheduling with degenerate delays [df01ad97][031f8cf7]
+ Fixed segfault in getlexdyn [4f5fc520][4c370072]
+ Fixed poor error with some slurpies with defaults [a92950fb]
+ Fixed Int.new to properly give a new object [e4a5bb17]
+ Fixed .STORE leaving behind elements on native arrays [a85c8d48]
+ Various async improvements [633a15b8][ef4d16fe][f53d3963]
[26a9c313][9d903408][0d600a0c][54783920][e0e5e6fa][b16aba01]
[d8890a82][73aeee6c][2a826238][3deda842][f58ac999][40c2d0cd]
[c46de00f][e5c17462][6e42b37e][80f883bc][6af44f8d][e70969e3]
[30462d76][97b11edd]
+ Various fixes and improvements to hyper/race [cc2a0643][2352efe5]
[d43b3738][dfa230f7][1fdc84fe][cef4806f][ea51d19b][374ee3e2]
[ad0dd8e7][41729e93][d74ba041][83676112][2580a0a6][cf1673d9]
[7e9b9633][870eaa31][d37a19ea][da977785][270e7c8a][ee3f0f4f]
[a042fd92]
+ Various improvements to warnings and error reporting [38186fcd]
[cf95ce81][66c2d05f][a845ac3d][48a84d6a][bb45791c][279bae08]
[6542bb80][5747bc71][c7a82d45][fb7abf06][ac97a401][64b001a1]
[1ea3297b][56eef696][25c87d0d][5d3ebc09][de2b9ff7][084078e1]
[3acde358][b3bb8c40][e611978f][12774237][33e113a2][9554a97c]
+ Additions:
+ Improved .Capture semantics on all core types [4ba12ff1]
[bad9fefd][cd5864cf]
+ Added trim* subroutines taking Cool instance [5a19dffa]
[691f8b7b][e01e5bc3]
+ Added Lock::Async [53dd776c][4a8038c2][85bdd38a][38896402][6170cb9d]
+ Added atomic reference op support on JVM backend [32e4a1de][59c4117f]
+ Added $*USAGE [0b15f672]
+ Added :bin parameter to IO::Handle.slurp [e2ec569b]
+ Added support for Bufs in &EVAL/&EVALFILE [6c928d61]
+ Added warning on typical precedence errors with infix:<..> [26bdc95c]
+ Added --repl-mode command line option [9ce896d8][20518454]
[5c7bbea0][93e599db][de0533c4]
+ Implemented typed pointer increment and array dereference
[3ca6554f][bc5fbfcb][2fba0ba0]
+ Added X::Numeric::CannotConvert exception type [2e726528]
[b377de1c][f04bd1d6]
+ Added IO::Handle.out-buffer for controlling the buffer size
[f9c10c21][765dd694]
+ Added IO::Path.parent(Int) for getting up more than one level
[7bea3a2d][78d8d509]
+ Removals:
+ Removed $*MAIN-ALLOW-NAMED-ANYWHERE [9cb4b167]
+ Removed support for ornate parenthesis from quoting constructs [9ce896d8]
+ Renamed $*INITTIME to $*INIT-INSTANT according to the spec
[6bdb2dd3][bd6c6403]
+ Build system:
+ Reworked REPL tests [be4d57de][338a0972][7c8a2739][f8edb829][1ce3a36d]
+ Various changes related to v6.d prep [7d830d5c][6cb810d2][36bc8e2d]
[31cbdada][16f64182][50d2013d][f62950dc][dd8a6102]
[36122f15][2a512f0c][03b1febc][edce8f53][c6ff787a]
+ Efficiency:
+ Made startup time up to 5 ms faster [48406db6][a09f5f21][bb5583ae]
+ Made chained ops up to 36x faster [a92d0369]
+ Made ≥, ≤, and ≠ unicode ops as fast as ascii equivalents
[6ec21cb4][1af2a745][43c348a8][9ff2f98f][6ad06fad]
+ Made &infix:<cmp> with Version:Ds 7.2x faster [1d9553f0]
+ Made &DEPRECATED 27% faster when vfrom is too large [145e3156]
+ Made Blob.gist 26x faster [20a99fc3]
+ Made Hash.gist 24% faster [69af24c4]
+ Made @a[42..*] 4.2x faster [456358e3]
+ Various NativeCall speedups [a06ebaf2][269fe7db][80d6b425]
+ Significantly faster interpolation of variables into regexes
[1761540e][0a68a18f][d73d500b][1775259a][e8003c87]
[4d3ccd83][04b171bd][317ae16c][dd880cad][2262cc47]
+ Other small optimizations [9d4a833b][6902c590][fb4eb666]
[b9c98531][4fae0711][921db910][c91c4011][98fae3d8]
[a462d0a2][16c2a157][5f6896bd][397692ac][476741e7]
+ Internal:
+ New JIT [2724a851][ff063e7b]
+ Better scheduler [d2eb7423][80b49320][340d8ed3][c50d35a9][9af5607d]
[683037be][7c18112c][c285b489][b5605c2d][3b98fb9e][596611c8]
[6f6e62ea][176a6fae][43b7cfde][59bfa5ab][27590e8b][e95eb42c]
[2c4868b8]
+ Added RAKUDO_SCHEDULER_DEBUG_STATUS env var [de311f46]
+ Bumped libuv to the latest version [198b8497]
+ Reworked BUILDALL method autogeneration [9837687d][63cf246f]
[5ad2fffe][31a03a41][eb9c3d4d][346dfeff][70ca505a][af2ab751]
[5cd9197f][6824e192][7363f898][4959df3f][dd943ede][d3c48185]
[371befe8][4d0ead24][92f239b5][7fa707db][d76af6aa][e513b857]
[f80a8461][fcbd8adb][21788c89][e2f8a57d][b58bd8fb][0dd6af71]
[f946bd35][cef3bf3e][92e51c3d][5144216f][ebd6440c]

New in 2017.09:
+ Fixes:
+ Fixed NativeCall signature check for unsupported native types [4077842c]
+ Fixed .made called on a Match on which .make was never called [5db5b1db]
+ Fixed flattening of a typed hash [6cec6b72]
+ Fixed iterator on pairs with Mu's [a5014fd0]
+ Fixed Supply.batch with non-int elems and elems == 1 [98f9fffe][7d1ece80]
+ Improved error message on nameless postfix `.::` [5969f21e]
+ Fixed ::("GLOBAL") [1f6a782c]
+ Refined merging of one() junctions [79604a88]
+ Fixed error message with leaking variable name in FailGoal [ed4f6cc9]
+ Implemented missing Instant.Instant [51709e01]
+ Fixed thread safety issues with signal introspection [1f411693]
+ Fixed thread safety issues in the `signal` sub [13b6a33c]
+ Fixed thread safety of "foo{$x}bar" [59454b03]
+ Made Bool.enums consistent with Enumeration.enums [e7a58806]
+ Fixed doubled path issue in IO::Notification.watch-path [2362dfd6]
+ Disabled interactive REPL for non-TTY input [b6a60236]
+ Fix ignoremark and casechange operations of graphemes which begin with
Unicode Prepend characters [7f526c1e]
+ Suppress line number in X::Package::Stubbed [edac1d68][7ba9b7cd]
+ Fixed race condition in Channel awaiter [b30ac08a]
+ Fixed NYI compilation of NativeCall sigs with optional params [1818de98]
+ Fixed missing deconts in nqp::eqaddr() tests [880b33e2]
+ Fixed Enumeration:D === Enumeration:D [8d938461]
+ Fixed non-blocking await when holding locks [f26d1e24]
+ Fixed non-blocking await-all to respect Slip [a137c0de]
+ Additions:
+ Added support for Str operations with Junctions [753c9a5e][7cd153f4]
[95a70ca3][0b19baf0][d2f31bb7][e18291e2][8b5d283c]
+ Added support for Unicode 10 [64dd94c2]
+ Added complete Unicode Collation Algorithm implementation [9b42484a]
[5f335065][ec18efa0]
+ .collate/coll/unicmp operators are no longer experimental
(Note: $*COLLATION dynamic variable is still experimental) [5f335065]
+ Added Thread.is-initial-thread method [59a2056a]
+ Added output buffering for non-TTYs [44680029][4b02b8aa]
+ Made temp and let on a Failure throw it [80a3255b]
+ Made sure that open files are properly closed on exit [3c9cfdba]
[97853564][347da8e5][dd8d0d89]
+ Implement pred() and succ() for the Enumeration role [2645a1e9]
[8d442a52][8df53f34][43e41ec6][55aa7f28][f925c648][69dae1f3][2ad51a0f]
+ Added isa method to SubsetHOW [0704cd97]
+ Build system:
+ Made t/harness* use 6 TEST_JOBS by default [8019c15b]
+ Added --ignore-errors option to Configure.pl [0bc1c877][1da075f9]
+ Fixed `make test` without `make install` first [fb0b3eb5]
+ Made Configure.pl refuse to work without ExtUtils::Command [3f4a9ffa]
+ Fixed non-installed gdb/valgrind runners [4e3f0fca]
+ Efficiency:
+ Knuth-Morris-Pratt string search has been implemented for string
indexing operations (needles between 2 and 8192 in length) [593fa5f8]
+ 1.5-2x speedup of most string operations involving strands [5ebbc5ba]
+ 2.5x speedup for eq() for comparing two flat strings (1.7-2x for others)
+ 9x speedup when indexing with a needle one grapheme in length [8a215876]
+ Made `Any ~ Str` and `Str ~ Any` about 25% faster [815faa35]
+ Made index and eqat operations 2x faster [5ebbc5ba]
+ Made all(@a), none(@a), one(@a) about 9x faster [51c3d86c]
+ Various improvements to BUILDPLAN and BUILDALLPLAN [7da0c215][0ca5ffa4]
[760530a5][80e069a4][2574f883][b706b843][963b28d1][532f7092]
+ Made object creation 25% faster in some cases [62fd5093]
+ Internal:
+ Simplified setting up auto-threading [8a0f6ac1]
+ Streamlined Junction .defined, .Bool, .ACCEPTS [e8137b45]
+ Added --no-merge option to t/harness5 to pass through STDERR [4af1d95c]
[84b40cf5]
+ Various improvements to INTERPOLATE [215a5fa7][ea57cbec][c6aacafd]
[47439e69][4c25df74][fc632cd8]
+ Some minor cleanup on R:I.FirstNThenSinkAll [9dbc3c50]
+ Fixed --ll-exception to give full thread backtrace [0877278e]
+ Various heap analyzer API changes [bfee5a1e]
+ Streamlined exit / END phaser handling [1adacc72]
+ Made junction optimizer only look at candidates [4de858a5]
+ Assortment of low-level improvements [cbce6721][8a215876]
[9b42484a][a4ce97ca]

New in 2017.08:
+ Security:
+ Removed '.' and 'blib' from nqp's default module search paths [7e403724]
Expand Down

0 comments on commit c65ad93

Please sign in to comment.