Build a URI from parts

It would be nice if you could build a URI from parts (and have it encode stuff properly without your involvement). If this is already possible, then it should be documented.
So, say something like this would print the full URI:
    say URI.new('http://google.com/search').query-form(
        num  => 100,
        hl   => 'en',
        safe => 'off',
        q    => '<foobar>',
    );
    # prints http://google.com/search?num=100&hl=en&safe=off&q=%3Cfoobar%3E

This has long been in the planning stage but has been held up by lack of progress on object attribute mutators which, AFAIK, still don't work.  See https://github.com/perl6/roast/blob/master/S12-attributes/mutators.t
To explain a bit more the plan was that you should be able to say:
my URI $u .= new;
$u.scheme = 'http';
$u.host = 'doc.perl6.org';
$u.path = '/language/faq';
$u.query-form = num => 100, hl => 'en';
say $u;

And this is how I envisioned the future of creating / modifying URIs.  It looks like the rakudo development team has been busy with other priorities.  If anyone wants to petition the powers that be to make mutators a priority I would certainly be grateful for the help.  There is, I believe, a related RT #124909.  I am also open to other suggestions.
BTW there is also one more RT of relevance and interest: RT #126520

I believe what you're requesting already works:
[17:08] <ZoffixGaming> m: class URI { has $.scheme is rw; has $.host is rw; method gist { "$!scheme://$!host" } }; my $u = URI.new; $u.scheme = 'http'; $u.host = 'doc.perl6.org'; say $u
[17:08] <camelia> rakudo-moar e2e23f: OUTPUT«http://doc.perl6.org␤»

There was a relevant IRC discussion here http://irclog.perlgeek.de/perl6/2015-12-07#i_11674007.  I believe something reasonable to be feasible with subsets at this point.
star-m: use IETF::RFC_Grammar::URI; subset ValidScheme of Str where /<IETF::RFC_Grammar::URI::scheme>/; class URI2 { has ValidScheme $.scheme is rw; has $.host is rw; method gist { "$!scheme://$!host" } }; my $u = URI2.new; $u.scheme = q!\\//!; $u.host = "?"; say $u
23:54 	camelia 	star-m 2015.09: OUTPUT«Type check failed in assignment to '$!scheme'; expected 'ValidScheme' but got 'Str'␤  in block <unit> at /tmp/EiEhZYitx4:1␤␤»

I've been thinking about this and also thinking about it in context of Jonathan's recent manifesto on simple accessors and mutators in Perl 6. I also have a prototype that adds mutators to the elements of URI here: https://github.com/zostay/uri/tree/mutators
I can finish the work here as is, but I'm considering replacing the is rw mutators with setter methods instead because:

Many of the mutators require additional code to keep the state of the object consistent, which makes the mutators very heavy.
Some of the accessors (e.g., $.port), are heavy accessors, e.g., returning either the real value or the default.
The authority accessor/mutator is synthetic, which is a heavy accessor/mutator by definition.
The $.path and $.authority values are tied together, so the value of one influences which values are permitted to keep a consistent URI object, which makes setting these attributes even more complicated than any I've finished coding yet.

Instead of my implementation, I want to suggest that the implementation of setters and getters be handled via multi-methods rather than as is rw accessor/mutator methods. That is, I think the implementation shown here below will be more Perlish than what is in my current WIP.
subset Port of UInt;
multi method port(URI:D: ) { ... }
multi method port(URI:D: Port:D $new) { ... }

subset Authority of Str where /^[ '' || <IETF::RFC_Grammar::URI::authority> ]$/;
multi method authority(URI:D: ) { ... }
multi method authority(URI:D: Authority:D $new) { ... }

I like much of what I saw on your URI with mutators but was thinking of a different approach.  You are extending the existing module by keeping the URI components as strings with subset restrictions.  Perl 6 is more object oriented than Perl 5 and an authority might be viewed as a structured object with a host, port,
host_type (like enum host-type (IPV4, IPV6, domain)), userinfo etc. "docs.perl6.org:8080" is a standard serialization of the object which has a parse method based on the grammar.  There might be a use for JSON or other possible serializations.
I don't understand the connection between path and authority (did you mean scheme?).
The same approach could apply to path, whose object might have an underlying list of segments, and query.  Your approach is simpler, more incremental and looks deliverable in the near future.  I feel the possibility of a URI object hierarchy is at least worth mentioning for this issue and might be helpful to keep in mind during development of the string subset implementation.

According to RFC, values that are legal for path vary depending on whether the authority is present or not.
Making authority and path into objects with sub-components is a good idea. I see that as a refinement of what I've done, not as a different approach. I can incorporate that. I suppose query and query-form could be handled that way too by making something that stringifies to the query, but otherwise behaves similar to a Hash::MultiValue.
Though, this begins to run into the problems described in #33, which is that some of these changes will necessarily break certain contracts that existing users expect.

My mutators branch now contains a draft implementation of mutators for every component of the URI. These are only basically tested so far and I still need to tighten things up all over the place, but I'm pleased with how it's shaping up.
I have gone ahead and build a URI::Authority class to handle $!authority which helped eliminate some ugliness. This naturally led to some interesting consequences I hadn't considered before, e.g.,
my $uri = $u.parse('/foo/bar');
$uri.port(8000); # EXCEPTION: «X::URI::Authority::Invalid: Could not parse URI authority: :8000»
$uri.host("localhost"); # never run

# Better would be
$uri.authority = URI::Authority.new(host => 'localhost', port => 8000);
# OR
$uri.authority("localhost:8000");

It might be slightly unintuitive to some that the order of operations is important here, so I will probably amend the message on X::URI::Authority::Invalid to give a hint like "Maybe you meant to set .host first?" That's just part of the tightening up that needs to happen.
I'm now considering how I want to tackle path/segments and then will move on to query/query-form.
I really appreciate any comments anyone wants to offer and the comments. Thanks, @ronaldxs, for you comments. They have been extremely helpful.
I really want to get this in order so I can get back to finishing up the reference implementation for P6WAPI, which is stuck on URI because I really need the mutators to avoid obfuscating some of the request manipulations I need to do over there.

I think the implementation I have been working on for making URI mutable is nearly complete. I need to update the documentation and make more tests, but I'm relatively happy with the way it works. The most controversial change it makes is a breaking change to query-form in that using it as a hash will always return lists of values by default. However, this behavior is configurable:
my $u = URI.parse("/home?foo=hello&foo=world&bar=bye");
dd $u.query-form<foo>; #> $("hello", "world")
dd $u.query-form<bar>; #> $("bye")

$u.query.hash-format = URI::Query::Singles; #URI::Query::Lists is default
dd $u.query-form<foo>; #> "world"
dd $u.query-form<bar>; #> "bye"

$u.query.hash-format = URI::Query::Mixed;
dd $u.query-form<foo>; #> $("hello", "world")
dd $u.query-form<bar>; #> "bye"

I considered making Mixed the default behavior, but I think the default behavior ought to be the safest, most robust available, which is clearly the Lists mode. I also considered avoiding the $.hash-format setting and returning a special URI::Query::Value instead that would act like a single value when used as a string or item or as a list, but that seemed dangerously magical to me.

I suppose the other controversial decision is that URI.query and URI.query-form are basically synonyms now. I'm thinking of deprecating query-form.

Well the PR has some test failures when merged to the current HEAD :
t/01.t                 (Wstat: 65280 Tests: 12 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 48 tests but ran 12.
t/authority.t          (Wstat: 256 Tests: 19 Failed: 0)
  Non-zero exit status: 1
  Parse errors: No plan found in TAP output
t/mutate.t             (Wstat: 256 Tests: 11 Failed: 0)
  Non-zero exit status: 1
  Parse errors: No plan found in TAP output

It would be rebase the PR against master and fix the failures and the merge conflict in the README if @zostay has a minute to look at that?

Actually the fix for the test failures is trivial
diff --git a/lib/URI.pm b/lib/URI.pm
index d1856b8..90a8423 100644
--- a/lib/URI.pm
+++ b/lib/URI.pm
@@ -38,7 +38,7 @@ class Authority {
     multi method new(Authority:U: Match:D $auth) {
         my Str $userinfo = do with $auth<userinfo> { .Str } else { '' }
         my Str $host     = "$auth<host>".lc;
-        my UInt $port    = do with $auth<port> { .Int } else { Nil }
+        my UInt $port    = do with $auth<port> { .Int } else { Int }

         self.new(:$userinfo, :$host, :$port);
     }

So given the merge conflict isn't a biggy, we could merge but I'm not going to make the call as only a few people have actually commented on the change.

Please also consider my comments on PR #34 from July 9.

Yep noted, would a way forward be to fix up the #34 as-is then bring it into a branch in this repository so it has a better visibility and people can fix up any infelicities that they see?  I'll do that this afternoon if people think this is a good idea.

Okay I'll do it as I have that up to date now.  I'll close the #34 and create a new PR on a branch here so that everyone can alter it as they wish.
Before merging I'd like to see a smoke test against modules that depend on this, and maybe at least a test to check that it does actually address @zoffixznet original suggestion.

Okay I've pushed all that to https://github.com/perl6-community-modules/uri/tree/zostay-mutators  I held off on making a new PR as, frankly, the forking is all a bit much for me and I didn't want to make it in the wrong place.

One year later... and I could really use the changes described here.
What do we need to make some progress?

@ufobat
For someone to volunteer their time and expertise to look at https://github.com/perl6-community-modules/uri/commits/zostay-mutators, possibly fix it, document and merge it along with tests, bump module version. Community modules do not have maintainers, so anyone is able to maintain it.

I'm just looking at rebasing the branch on the current master, but as it has a while it may take some time to get it right.

I've got most of the tests working, the only part that is missing is the punycode fixes as that part of the code has been completely replaced. If I don't get it working this evening I'll push to the branch anyway so other people can look at it.

punycode fixes

Is a module used or a self-hosted implementation?

Anyhow I've just pushed a working rebase to https://github.com/perl6-community-modules/uri/commits/zostay-mutators -iit passes all the tests and should be good to merge, however it  probably needs furter testing as I'm sure there have been fixes applied without tests.

@jonathanstowe
The reason it fails is that Test::META uses https://modules.perl6.org/dist/Test::META:cpan:JSTOWE/META6.json#L18 URI module, and URI module tries to test itself with Test::META...
So tests of Test::META fail https://travis-ci.org/perl6-community-modules/uri/builds/567616721#L396 like this and thus URI can't be installed, because its dependency was not installed.

Oh, so really that META test wants to be optional on the Test::META being installed.

Sorted

I've tested HTTP::UserAgent with the branch and it's fine.  I'd recommend testing the branch with your favourite code before we merge.

Also tested with my (still) un-released Sofa which un-earthed the double escaping problem in the first place.
Will grep for URI in the other modules I have to hand and test them to.

Test::META ok
LWP::Simple ok
WebService::Soundcloud not ok :
Ambiguous call to 'AUTOGEN(URI: )'; these signatures all match:
:(URI:D: *%_)
:(URI: *%_)
  in method build-url at /home/jonathan/devel/perl6/modules/WebService-Soundcloud/lib/WebService/Soundcloud.pm (WebService::Soundcloud) line 660
  in method get-authorization-url at /home/jonathan/devel/perl6/modules/WebService-Soundcloud/lib/WebService/Soundcloud.pm (WebService::Soundcloud) line 364
  in block <unit> at t/030-get.t line 40

Fixing.

Fixed that.  Also upgraded some warnings to hard deprecations.

It would be a great boon if some people could review the #44 (also take a look at the AppVeyor fail,) and/or test some more modules with that branch.  I'm not going to merge this without some explicit feedback.

BTW These are the modules that declare URI as a dependency

[ ] API::Discord
[ ] API::USNavalObservatory
[ ] App::AizuOnlineJudge
[ ] Audio::Icecast
[ ] Bailador
[ ] CamelPub
[ ] Cookie::Baker
[ ] Crust
[ ] Docker::API
[ ] FanFou
[ ] Farabi6
[ ] Geo::Coder::OpenCage
[ ] GlotIO
[ ] Gravatar::URL
[ ] HTTP::ParseParams
[ ] HTTP::UserAgent
[ ] JSON::RPC
[ ] LWP::Simple
[ ] Matrix::Client
[ ] MongoDB
[ ] Monitor::Monit
[ ] Oddmuse6
[ ] p6doc
[ ] Pastebin::Shadowcat
[ ] Perl6::Documentable
[ ] PodCache::Module
[ ] Pod::To::HTML
[ ] Pod::To::HTMLBody
[ ] Selenium::WebDriver
[ ] Task::Galaxy
[ ] Task::Popular
[ ] Test::META
[ ] Twitter
[ ] Web::RF
[ ] WebService::AWS::Auth::V4
[ ] WebService::AWS::S3
[ ] WebService::FootballData
[ ] WebService::GitHub
[ ] WebService::Google::PageRank
[ ] WebService::Lastfm
[ ] WebService::SOP
[ ] WebService::Soundcloud
[ ] Wikidata::API
[ ] WWW::DuckDuckGo
[ ] WWW::SilverGoldBull
[ ] WWW::vlc::Remote

WebService::AWS::Auth::V4 is a fail with this:
Use of Nil in string context
  in block  at /home/jonathan/.rakudobrew/moar-master/install/share/perl6/site/sources/339D6695E181E001033D0E5525B6025A9DAE1C73 (URI) line 78
# Failed test 'correctly canonicalized empty'
# at t/basic.t line 70
# Type check failed in assignment to $path; expected Str but got URI::Path (URI::Path.new(path => "/", seg...)
# Failed test 'correctly canonicalized nonempty query'
# at t/basic.t line 76
# Type check failed in assignment to $path; expected Str but got URI::Path (URI::Path.new(path => "/home/d...)
# Failed test 'correctly match canonical request test from aws'
# at t/basic.t line 93
# Type check failed in assignment to $path; expected Str but got URI::Path (URI::Path.new(path => "/", seg...)
# You planned 26 tests, but ran 18
# You failed 3 tests of 18

I can get that to work with a couple of small changes (which are backward compatible,) it also needed some changes regarding  escaping as this had changed under it since it was last updated.

PodCache::Module is a fail:
No such method 'IO' for invocant of type 'URI::Path'
  in block  at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 496
  in sub handle at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 484
  in sub handle at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 296
  in sub handle at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 230
  in sub handle at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 242
  in method process-pod at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 119
  in submethod TWEAK at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Processed.pm6 (PodCache::Processed) line 47
  in method processed-instance at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Render.pm6 (PodCache::Render) line 365
  in method process-name at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Render.pm6 (PodCache::Render) line 395
  in method process-cache at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Render.pm6 (PodCache::Render) line 383
  in method update-collection at /home/jonathan/.zef/store/pod-render.git/02c49579afd206f85eb59113b30fc5344ff421f1/lib/PodCache/Render.pm6 (PodCache::Render) line 527
  in block <unit> at t/150-html.t line 107

A simple Str coercion should fix.

Bailador is a fail (though I'm not sure it's entirely due to this change:)
# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foo", ...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/01-OO-route-existence.t line 44

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foo", ...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/01-route-existence.t line 42

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foo", ...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/03-OO-response-content.t line 38

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foo", ...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/03-response-content.t line 35

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/", seg...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/04-OO-templates-mustache.t line 22

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/", seg...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/04-OO-templates.t line 20

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/a", se...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/04-templates-mustache.t line 18

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/a", se...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/04-templates.t line 16

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/cook1"...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/06-OO-cookies.t line 90

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/cook1"...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/06-cookies.t line 84

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/07-OO-errors.t line 23

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/07-errors.t line 19

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/08-OO-sessions.t line 42

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/08-sessions.t line 40

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/app/so...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/09-OO-nested-routes.t line 55

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

    # Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/x", se...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
    #
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/09-prefix.t line 60

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/11-error-templates.t line 25

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foo", ...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/12-duplicate.t line 26

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# You planned 3 tests, but ran 1
# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/a", se...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/14-auto-head-generation-in-core.t line 31

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/file.t...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/15-file-serving.t line 15

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/16-test-headers.t line 19

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/file.t...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/17-test-content-type-handling-with-config.t line 35

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/file.t...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/17-test-content-type-handling.t line 32

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

# Type check failed in binding to parameter '$text'; expected Str but got URI::Path (URI::Path.new(path => "/foobar...)\n  in sub uri_decode at /home/jonathan/.zef/store/URI-Encode.git/5f4d747d38a16d1f8d1e572066ec9ef58323c9dc/lib/URI/Encode.pm6 (URI::Encode) line 34\n  in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 340\n  in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320\n
#
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in block <unit> at t/18-serve-single-file.t line 25

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

    # You planned 17 tests, but ran 1
Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-api.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-app.t line 16

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-class-app.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-controllers.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-echo.t line 16

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-err.t line 16

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block  at t/30-examples-gradual.t line 21
  in block <unit> at t/30-examples-gradual.t line 15

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-layout.t line 22

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block  at t/30-examples-pastebin.t line 24
  in block <unit> at t/30-examples-pastebin.t line 18

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-postapp.t line 16

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-prefix.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-request.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-reuse-inherit-app.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-reuse-mixed-app.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-reuse-shared-app.t line 17

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

Tried to get the result of a broken Promise
  in sub get-psgi-response at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 80
  in sub run-psgi-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/Test.pm (Bailador::Test) line 49
  in block <unit> at t/30-examples-templates.t line 22

Original exception:
    Type check failed in binding to parameter '$uri'; expected Str but got Any (Any)
      in method log-request at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 248
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 355
      in method dispatch at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 337
      in block  at /home/jonathan/.zef/store/Bailador-0.0.18.tar.gz/Bailador-0.0.18/lib/Bailador/App.pm (Bailador::App) line 320

===> Testing [FAIL]: Bailador:ver<0.0.18>:auth<github:Bailador>

@jonathanstowe will check it within the next couple of days!

Bailador is fixed

Checked Bailador as fixed.
Checked WWW::DuckDuckGo <- depends on HTTP::UserAgent and works just fine, the same for WWW::SilverGoldBull(at least it installs).

Nice one.  Let's think about merging it midweek.

WebService::SOP was a fail, fixed by explicit coercions  PR is https://github.com/yowcow/p6-WebService-SOP/pull/12

I'm going to merge #44 today.  I propose closing this and dealing with the inevitable flurry of small issues separately.

Just do it. I was going to check what's the matter with the doc repo, but I guess I'll fix it afterwards. Thanks for your work.

I'm going to put a ticket to fix up the README as all the merging has left it with inconsistent markdown style which I didn't want to deal with.


Remove SHA1 for support for ssh rsa signing

https://github.com/go-fed/httpsig seems to be unmaintained.
Switch to github.com/42wim/httpsig which has removed deprecated crypto and default sha256 signing for ssh rsa.
No impact for those that use ed25519 ssh certificates.
This is a breaking change for:

gitea.com/gitea/tea (go-sdk) - I'll be sending a PR there too
activitypub using deprecated crypto (is this actually used?)

Thanks @42wim, could you run make tidy on this so the licenses file gets updated?

Here is the diff from that fork: https://github.com/go-fed/httpsig/compare/master...42wim:httpsig:master


MergeSortingBlockInputStream use spiller

What problem does this PR solve?
Issue Number: ref #6528, close #6611
Problem Summary:
What is changed and how it works?

MergeSortingBlockInputStream use spiller
Spiller uses FileProvider since the tmp data also need to be encrypted
add a simple test case for spill sort
move Spiller from dbms/Common to dbms/Core since I meet some link issues
add a workaround to support final topN in unit test.

Check List
Tests

[x] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-unit-test

/run-all-tests

It seems some tests didn't pass， others LGTM.

It seems some tests didn't pass， others LGTM.

The newly added unit test is unstable, ref #6622 for details. I've updated the test now.

/run-all-tests

/merge

/merge


🐛 FIX: Code-block 'Out' text

At present we are commenting out the remnants of Out text for code-cells.
Created a feature request for it with the ability to show execution count in code-cells. https://github.com/QuantEcon/quantecon-book-theme/issues/83
fixes https://github.com/QuantEcon/lecture-python.myst/issues/40

@mmcky  merging this one for now. Let me know if it creates any issues.

@mmcky  merging this one for now. Let me know if it creates any issues.


save image with color

Hi @jinzhu
When I save Color and Product Image at same time. I get double ColorVariant.
One with Color and Another with Product Image. Please have a check. Thank you.

Fixed, please check it out.

all work well now. thanks!


The owner has reached maximum creation limit of 0 repositories.

Hi

When i want to create a repositorie in my organizations i got this error :
The owner has reached maximum creation limit of 0 repositories.

Hi, please update Gogs with latest master.

I install gogs 5 minutes ago

Which way did you install?

with packager.io.

That is unexpected because the last commit message I click I can see is: https://github.com/pkgr/gogs/commit/98da7241a00a13d9fd46bc5d1cec1b2a3ac01534
Which is just the fix for this issue.

what is the version you see after installation?

How i know that ?

It shows on bottom of every page.

Version: <IP_ADDRESS>1

Thanks.
I recommend try to install through other ways to avoid the possibility that not all mirrors of packager.io have been updated.
If problem still exists in other ways, I'll reopen this issue and find out way.

I try to install via source but when i do
go get -u github.com/gogits/gogs

i got

can't load package: package github.com/gogits/gogs: no buildable Go source files in /root/go/src/github.com/gogits/gogs

This Max Creation Limit an issue for me as well and I've just built the latest version from go/git.

@DropMotion that means download was failed...
Just to confirm, are you both using SQLite3?

Yes, I'm using SQLite3

@KillTheIdols Thanks, can you check the database table user see what are the values for column max_repo_creation?

@Unknwon yes i have SQlite3

Just pushed another fix to master branch, please help test out again!

Gave it a go, still receiving an error. The max_repo_creation is 0.
id|lower_name|name|full_name|email|passwd|login_type|login_source|login_name|type|location|website|rands|salt|created|updated|last_repo_visibility|max_repo_creation|is_active|is_admin|allow_git_hook|allow_import_local|avatar|avatar_email|use_custom_avatar|num_followers|num_followings|num_stars|num_repos|description|num_teams|num_members
2|lynk|lynk|Lynk|||0|0||1|||||2015-12-11 19:00:38|2015-12-11 19:18:54|1|0|1|0|0|0|||1|0|0|0|2||1|1

I tried settings it to -1 and it worked, but by default it's set to 0.

@KillTheIdols the account already created can't be fixed, you need go to admin panel and edit user's limit back to -1... :sweat_smile: fix only works for newly created accounts.

I cannot edit the max repo's for an organization without direct DB modification.

I cannot edit the max repo's for an organization without direct DB modification.

This is indeed a known problem (to me), you can file an issue for this specifically.
How about newly created accounts?

A newly created organization has max_repo_creation set to 0, a new user account has it set to -1, so maybe something is missing when creating an organization user/account?

A newly created organization has max_repo_creation set to 0, a new user account has it set to -1, so maybe something is missing when creating an organization user/account?

Thanks! Let me check.

Pushed to master branch.

Still get the same issue. I don't really understand how do you fix it @KillTheIdols

@DropMotion for account already created, you can go to admin panel /admin/users to edit its value to -1.

I already do that. I still get the same issue.

Tested and confirmed working, thank @Unknwon!
@DropMotion, just pull/update and it should all work now.

i'm on the version 0.7.33

The latest version should be <IP_ADDRESS>1 Beta, and 0.7.33 does not have this feature...

@Unknwon Sorry version <IP_ADDRESS>1

@DropMotion hmm, yes, you need to re-pull from master.

Drop motion, you will have to recreate the organization, if this is not possible you'll have to edit the DB manually.
This fix will not fix orgs created between the new max_repo function and the fix just applied.

Thanks @Unknwon and @KillTheIdols I update my server to the lasted branch and recreate my organization and it works :D

Awesome!
@KillTheIdols would you mind file the issue about admin can't edit organization settings?

Issue created! We can close this one off now. :smile:
Thanks :+1:

Thank you both!


Do you live in [County] description text shows TBD

Describe the bug
In the Doorway Common App, under the "Do you work in [County]?" question, there is text that says "TBD".
To Reproduce
Steps to reproduce the behavior:

Go to the doorway common app on staging https://staging.housingbayarea.mtc.ca.gov
Go through until you see the this question https://staging.housingbayarea.mtc.ca.gov/applications/contact/address
Scroll down to this question
See TBD

Expected behavior
There should be no text in the line that says "TBD"
Screenshots

QA: This should no longer be visible when it is asked to the applicant directly or when referring to another in the household member section.

lgtm in staging


i couldn't log in IG:dm

I couldn't log in the ig:dm app. after install, when i opened it, it showed  Error: connect ETIMEDOUT <IP_ADDRESS>:443. what does this mean? how can i fix this?

I met this problem too.
How to solve it?


Provider produced inconsistent result with Azure_Ephemeral_OS_Disk as the storage type

Error: Provider produced inconsistent result after apply
│
│ When applying changes to citrix_machine_catalog.catalog_name, provider "provider[\"registry.terraform.io/citrix/citrix\"]" produced an unexpected new value:
│ .provisioning_scheme: inconsistent values for sensitive attribute.
│
│ This is a bug in the provider, which should be reported in the provider's own issue tracker.

Subsequently, running terraform plan indicates that the resource is tainted and must be replaced:
      ~ provisioning_scheme      = {
          ~ azure_machine_config           = {
              ~ storage_type              = "Standard_LRS" -> "Azure_Ephemeral_OS_Disk"
                # (7 unchanged attributes hidden)
            }
            # (7 unchanged attributes hidden)
        }
        # (5 unchanged attributes hidden)

Hi @j7lloyd,
Thank you for reporting this issue. During what action do you see this issue? Create/Import/Update? Can you also share the terraform config, masking any sensitive attributes?
Thanks,
Aneesh

Initially, the error arises during the creation of a machine catalog. However, an update necessitates the replacement of the resource, trapping me in a vicious cycle. Despite experimenting with different configurations, the outcome consistently persists when storage_type is set to 'Azure_Ephemeral_OS_Disk'. Hence, the fix outlined in PR #75 guarantees that the storage_type remains unchanged in this situation.

I have conducted further testing today and found that this issue occurs when I use a machine_profile_vm – or at least it doesn't error when I use a machine_profile_template_spec – after which, the StorageType value is set to "Standard_LRS" in CustomProperties, as follows:
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="Zones" Value="1" />
    <Property xsi:type="StringProperty" Name="UseEphemeralOsDisk" Value="true" />
    <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
    <Property xsi:type="StringProperty" Name="SharedImageGalleryReplicaRatio" Value="40" />
    <Property xsi:type="StringProperty" Name="SharedImageGalleryReplicaMaximum" Value="10" />
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="**removed**" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS" />
</CustomProperties>

Hi @j7lloyd,
Thanks for bringing up this issue and also for opening the corresponding PR. We will have this fix included in the next release.
Aneesh


Issue with theme settings form in TheBootstrapMachine not rendering in 1.10.2

Theme settings page works fine in 1.9.3 with https://github.com/OrchardCMS/TheBootstrapMachine
After updating to Orchard 1.10.2 and applying the pull request https://github.com/OrchardCMS/TheBootstrapMachine/pull/2
The Theme Settings page only has a save button, the form does not render.
I have tried to identify differences between this module and say Orchard.Comments and the main difference is that Orchard.Comments uses a Driver, where TheBootstrapMachine uses a TemplateFilterForPart
1.9.3 Theme Settings page

1.10.2 Theme Settings page

I have yet to test on 1.10 and 1.10.1

Another observation is that the URL is different
1.10.2: http://localhost:30321/OrchardLocal/Admin/Settings/ThemeOptions
1.9.3:   http://localhost:30321/OrchardLocal/Admin/Settings/Theme Options

Looks like a fix we applied to group urls for settings, specifically for the audit trail.
Hope we haven't broken anything.
6df57dd098c5f5813fc865f3e057cd359037d666

The fix was related to the issue #7371 I found.

From the Theme perspective, removing the space from the GroupId fixes the issue
From:
Filters.Add(new TemplateFilterForPart<BootstrapSettingsPart>("BootstrapSettings", "Parts/BootstrapSettings", "Theme Options"));
To:
Filters.Add(new TemplateFilterForPart<BootstrapSettingsPart>("BootstrapSettings", "Parts/BootstrapSettings", "ThemeOptions"));
Is there an issue matching the route back to the groupId and the part to be rendered?
Given that the route in 1.10.2 is "ThemeOptions" (Space removed) and the group id is "Theme Options"

The group is normalized so I assume we need to do it too in the Template Filter.
NB:
Uou mention 1.10.2 but this theme is not shipped with Orchard

Sorry @sebastienros, I am just using that theme as a repeatable reference implementation to an issue upgrading from 1.9.3 to 1.10.2.
The 1.10.2 reference to "ThemeOptions" is only reference to the generated URL from Orchard 1.10.2, and not the theme code itself.

Fixed in 55485cb465203c7d440ac600169ede918efc8ad1, verified with TheBootstrapMachine.


Terraform bash completion improvements

The terraform script was not auto-completing everything and when it did, it was not able to extract only the correct completion keywords.
The script was completely re-written and should now be working as expected with autocompletion for all the terraform sub commands.
I also removed the executable bit from the capistrano completion script. No other script in the same folder has the executable bit set.

Thanks!


fix: upgrade to version 3.2.155

from: https://github.com/jenkins-x/jx

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign cagiti
You can assign the PR to them by writing /assign @cagiti in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test vault

gsm
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test gsm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test vault

gsm
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test gsm

tls
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test tls

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test vault

gsm
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test gsm

tls
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test tls

kube
cc1df982df3009162873ebc5b871eb6f198f5c92
link
/test kube

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


How to run it locally?

How Do I run it locally? And can it run .gguf files?

@CultriX-Github did a really cool fork that can run locally: https://github.com/CultriX-Github/llm-autoeval
It doesn't support GGUF versions, however. Might be added in the future.

To elaborate on this, you would need  to:
Steps:

Fork the repo: https://github.com/CultriX-Github/llm-autoeval.git and run t he runpod.sh script which will ask you for some of the  variables that are usually being set by the Google Colab script  that starts the Runpod instance.

git clone  https://github.com/CultriX-Github/llm-autoeval && cd llm-autoeval && bash runpod.sh

Wait for the runpod.sh script to complete.
Profit

Optionally, you could start the script in a screen sessions so you don't lose your benchmarking progress if you get disconnected. To do so, simply run:
git clone  https://github.com/CultriX-Github/llm-autoeval && cd llm-autoeval && apt update -y && apt install -y screen && screen -S autoeval -m bash runpod.sh


[2.0.0rc] DotNetCore -> DotNet Rename Missed Objects

Prerequisites

[X] I have written a descriptive issue title
[X] I have searched issues to ensure it has not already been reported

Cake runner
Cake .NET Tool, Cake Frosting, Cake runner for .NET Framework, Cake runner for .NET Core
Cake version
2.0.0-rcx
Operating system
N/A
Operating system architecture
N/A
CI Server
No response
What are you seeing?
The new DotNetMSBuildSettings object (https://github.com/cake-build/cake/blob/develop/src/Cake.Common/Tools/DotNet/MSBuild/DotNetMSBuildSettings.cs) iteself references some DotNetCore namespaced classes.
What is expected?
DotNetCore namespace is all obsolete and replaced with the DotNet namespace
Steps to Reproduce
See file https://github.com/cake-build/cake/blob/develop/src/Cake.Common/Tools/DotNet/MSBuild/DotNetMSBuildSettings.cs it has a using statement Cake.Common.Tools.DotNetCore.MSBuild; as it neededs things in the DotNetCore namespace.
Output log
No response

Thanks @BlythMeister. This one you spotted is "by design".
The goal was to introduce the new DotNet*** aliases without introducing breaking changes to existing DotNetCore*** aliases.
Unfortunately the class MSBuildLoggerSettings which is in the old ...DotNetCore namespace doesn't have the Core suffix on it, so I couldn't add it to the new ...DotNet namespace and keep the old one at the same time as I did with all the other classes, because that causes ambiguity in Cake scripts as the compiler doesn't know which one to pick...
The plan is to remove all the DotNetCore*** on Cake 3.0 ➡  https://github.com/cake-build/cake/issues/3341 at which point the old ...DotNetCore namespace will disapear.
That said, the fact that MSBuildLoggerSettings relies on the old namespace (in theory) should be an implementation detail and should not make any difference for the user in Cake scripts and with most Frosting builds...
The only scenario I can think of where you would still need to include the old namespace is Frosting-only, if you specifically use MSBuildLoggerSettings in your code.
Let me know if I missed anything

Yeah, that's exactly how I noticed it, in my frosting project I bulk removed the "Core" from "DotNetCore" and this updated the using.
It's not something I'm too concerned about to be honest and the reasoning makes perfect sense.
So this can be closed 👍

The only other potential idea could be to move the classes in cake 2.x.
And make the "DotNetCore" namespaced versions reference the objects in the new namespace?
At some point, this will be a hard break for someone using frosting whereby the namespace is in a using statement.
Is it better to make that hard break now so its when they are changing to the new alias?

Is this what you mean?
1.) Copy Cake.Common.Tools.DotNetCore.MSBuild.MSBuildLoggerSettings to Cake.Common.Tools.DotNet.MSBuild.MSBuildLoggerSettings
2.) Rename Cake.Common.Tools.DotNetCore.MSBuild.MSBuildLoggerSettings to something like Cake.Common.Tools.DotNetCore.MSBuild.MSBuildCoreLoggerSettings
?
Therefore breaking Frosting now, rather than in 3.0?

Yeah exactly (and any of the other classes in the DotNetCore namespace which don't have DotNetCore in the name.
I think it will mean 1 breaking release rather than 2.
For me, obsolete is breaking as our corporate environment has warnings as errors enabled 😂

@BlythMeister Unfortunately we missed the boat on this one... Cake v2.0 shipped earlier today, so we'll have to schedule this one for v3.0


iOS development build crashing with invalid memory access

Report
Plugin Version
6.14.3
On what Platform are you having the issue?
ios
What did you do?
I ran my app in a physical iOS device.
npx expo start --dev-client --reset-cache --port 8081
What did you expect to happen?
I expected the app to load correctly
What happened instead?
As soon as I called the appsFlyer.initSdk() function, I get the error below. It seems like an invalid memory access.
Please provide any other relevant information.
Interestingly, this only happens on the iOS development builds. Not on either the production builds or the simulator ones.
Here are the error logs I can see:
[com.facebook.react.RNAppsFlyerQueue] AppsFlyer SDK version 6.14.3 started build (177)
[com.facebook.react.RNAppsFlyerQueue] Keychain items migration status: 0
[com.facebook.react.RNAppsFlyerQueue] * AppsFlyer is set to debug mode. This should only be used in development environment! *
[com.facebook.react.RNAppsFlyerQueue] handleOpenUrl: exp+decaf-wallet://expo-development-client/?url=http%3A%2F%2F<IP_ADDRESS>%3A8081
[com.appsflyer.serial] [DDL] Params: {
    "att_status" = "-999";
    idfv =     {
        type = unhashed;
        value = "5253716C-EBAF-48E9-9660-EA12F697D204";
    };
    "is_first" = 1;
    lang = "";
    os = "17.3";
    "request_count" = 1;
    "request_id" = "1716576625903-5253716";
    timestamp = "2024-05-24T18:54:00.542";
    type = iPhone;
}
DDL Timeout: 60.00000sec
[com.appsflyer.serial] Deeplink regex execution time: 0.000084
[AppsFlyer Exception Client] [EXM] Flush called not on didEnterBackground. Exceptions will not be sent
[com.appsflyer.serial] Start
[com.appsflyer.serial] [CLS] ADClient not found
[com.appsflyer.serial] [CLS] FBSDKAppEventsUtility loaded
[com.appsflyer.serial] [START] isFirstLaunch: Yes, timestamp: (null)
[com.appsflyer.serial] Dynamically loaded library: AdServices
+[RNFBAppModule getCustomDomain:] [Line 239] authDomains: (null)
-[RNFBAuthModule configureAuthDomain:] [Line 165] RNFBAuth app: __FIRAPP_DEFAULT customAuthDomain: (null)
[com.appsflyer.serial] [SKAd] Register app for SKAdNetwork attribution with status code: 0
[com.appsflyer.serial] [START] Initial start of the application
[com.appsflyer.serial] Installation detected
[com.appsflyer.serial] Looking for previous version date
[com.appsflyer.serial] Current cached application version: (null), new version: 5.0.0
[com.appsflyer.serial] First AppsFlyer SDK launch or new version detected
[com.appsflyer.serial] date1: 2024-05-24_125025-0600
[com.appsflyer.serial] date2: 2024-05-24_125357-0600
[com.appsflyer.serial] date3: 2024-05-24_125357-0600
[com.appsflyer.serial] Generate first launch date: 2024-05-24_125401-0600
[com.appsflyer.serial] First launch date: 2024-05-24_125401-0600
[com.appsflyer.serial] iAD: iSearchAdsDict is nil
[com.appsflyer.serial] [SKAd] No SKAdRule found
[com.appsflyer.serial] AFSDK_NO_IDFA
[com.appsflyer.serial] [iAD]: ASA disabled: No
[com.appsflyer.serial] [iAD]: Send Atttribution request
[com.appsflyer.serial] Looking for previous version date
[com.appsflyer.serial] Current cached application version: 5.0.0, new version: 5.0.0
[com.appsflyer.serial] Use date3 from storage
[com.appsflyer.serial] date1: 2024-05-24_125025-0600
[com.appsflyer.serial] date2: 2024-05-24_125357-0600
[com.appsflyer.serial] date3: 2024-05-24_125357-0600
[com.appsflyer.serial] First launch date: 2024-05-24_125401-0600
[com.appsflyer.serial] AFSDK_NO_IDFA
[AppsFlyer Exception Client] [EXM] Flush called not on didEnterBackground. Exceptions will not be sent
[com.appsflyer.serial] Start
[com.appsflyer.serial] [CLS] ADClient not found
[com.appsflyer.serial] [CLS] FBSDKAppEventsUtility loaded
[com.appsflyer.serial] [START] isFirstLaunch: No, timestamp:<PHONE_NUMBER>.509207
[com.appsflyer.serial] [START] Time from last start(session): 0.005666
[com.appsflyer.serial] [WARNING] Skip launch
[com.appsflyer.serial] [HTTP] Operation start: `DDL-F84592A5-85BD-4337-B2D4-C052F14C0462`
[com.appsflyer.serial] [DDL] URL: https://wyvzzc-dlsdk.appsflyersdk.com/v1.0/ios/id1616564038?sdk_version=6.14&af_sig=6905d8566acc704fadec7c063fa5c8577c7ba26f1458ed424eefc1454ed698aa
[com.appsflyer.serial] [CACHE] Caching request...(cache size: 0)
[com.appsflyer.serial] [CACHE] Caching request...(cache size: 1)

The error happens here 👇
SKAdNetwork: Error while updating conversion value: Error Domain=SKANErrorDomain Code=10 "(null)"
[com.appsflyer.serial] [SKAd] Error updating conversion value: The operation couldn’t be completed. (SKANErrorDomain error 10.)
[com.appsflyer.serial] [SKAd] Monitoring report payload: {"sdk_version":"6.14.3","gcv_transaction_id":"7B516B71-FC6C-4BF2-9E05-60AD94DAAAF8","gcv_coarse_value":"low","gcv_lock_window":false,"error_description":"The operation couldn’t be completed. (SKANErrorDomain error 10.)","gcv_postback_sequence":0,"subject":"sdk-cv-skan4-error-log","skan_mode":"undefined","is_default_coarse":true,"ucv_coarse_value":"low","gcv_next_w_time":0,"app_id":"id1616564038","install_time":"2024-05-24_125025-0600","error_code":10,"error_name":"unknown","gcv_req_device_ts":0,"is_default_fine":true,"timestamp":1716576842,"ucv_lock_window":false,"os_version":"17.3","ucv_fine_value":0,"ucv_device_ts":1716576841575,"gcv_fine_value":0,"appsflyer_id":"1716576625903-5253716"}
[com.appsflyer.serial] [SKAN] URL: https://wyvzzc-dynamic-report-api.appsflyersdk.com/api/dynamic-report/1

@JuanRdBO any update on this? Curious to understand how you resolved as I am experiencing a similar issue

Bumping this issue!
@JuanRdBO @alhassanreem Did you ever find the fix?


DOCUMENTATION: migrating configuration from several CommonsChunkPlugin to SplitChunksPlugin

Do you want to request a feature or report a bug?
FEATURE REQUEST: improve documentation to migrate from webpack 3 and CommonsChunkPlugin to webpack 4 and SplitChunksPlugin
What is the current behavior?
Documentation only addresses very simple cases.
What is the expected behavior?
I have a two heavy pages with loads of components called 'editor' and 'player' and a multitude of light pages with standard components essentially for input and grid. Accordingly, my webpack 3 configuration consists of an entry per page including 'editor' and 'player' and two CommonChunkPlugin:
const heavyChunkPlugin = new webpack.optimize.CommonsChunkPlugin({
    name: 'heavy',
    filename: `[name].bundle.js?v=${pkg.version}`,
    chunks: ['editor', 'player']
});
const commonChunkPlugin = new webpack.optimize.CommonsChunkPlugin({
    name: 'common',
    filename: `[name].bundle.js?v=${pkg.version}`,
    chunks: ['heavy', 'page1', 'page2', 'page3', 'page4', 'page5', ...],
    minChunks: 2
});

I load common.bundle.js on all pages and heavy.bundle.js only on the 'editor' and 'player' pages with the additional required components.
I have found the following way to migrate this configuration to webpack 4 and SplitChunksPlugin but this is undocumented. Is this equivalent? Any caveat?
optimization: {
    minimize: true,
    splitChunks: {
        cacheGroups: {
            heavy: {
                chunks: 'initial',
                filename: `[name].bundle.js?v=${pkg.version}`,
                minChunks: 2,
                name: 'heavy',
                reuseExistingChunk: true,
                test: (module, chunks) =>
                    chunks.length === 2 &&
                    /^(editor|player)$/.test(chunks[0].name) &&
                    /^(editor|player)$/.test(chunks[1].name)
            },
            common: {
                chunks: 'initial',
                filename: `[name].bundle.js?v=${pkg.version}`,
                minChunks: 2,
                name: 'common',
                reuseExistingChunk: true,
                test: (module, chunks) =>
                    !(
                        chunks.length === 2 &&
                        /^(editor|player)$/.test(chunks[0].name) &&
                        /^(editor|player)$/.test(chunks[1].name)
                    )
            }
        }
    }
},

If this is a feature request, what is motivation or use case for changing the behavior?
I am not the only one to struggle with this undocumented use case: see https://gitter.im/webpack/webpack?at=5ad7a325270d7d3708df7392.
It might be worth documenting...

@webpack-bot move to webpack/webpack.js.org


Feat/notify level

Branched off https://github.com/whitecolor/ts-node-dev/pull/93
Fixes for specifying notifyLevel to just get errors in OS notifier
In included the fix for notifying on uncaught errors here too, since the code was related

ping @whitecolor - separated this out now

ping @whitecolor - do you have time to look at these PRs please?

Don't you think that this is not the responsibility of ts-node-dev?

@whitecolor again - sorry for being late on this - don't know why I wasn't getting proper notifications
Well, you could argue that it's not ts-node-dev's thing to integrate an OS notifier, but since that is already in place, I definitely think this is a must have personally

@whitecolor ping!


Build dictionary custom in schema.custom.yaml

Is your feature request related to a problem? Please describe.
I have a english.schema.yaml with english as the default dictionary.  In luna_pinyin.custom.yaml I change the dictionary of  "table_translator@english" to english_pinyin.dict.yaml with additional dictionaries. However, when I deploy my configurations, I cannot get english_pinyin.dict.yaml built.
Describe the solution you'd like
Build dictionary custom in scheme.custom.yaml
Additional context
Above issues happen on

OS: macOS
Squirrel: 0.16.2

add a dependency would work

Current solution: define a separate *.schema.yaml file for building other dictionaries, and list the added schema in schema/dependencies.
One input schema cannot be used to build multiple dictionaries, because building a dictionary uses configurations defined in the schema, like speller/algebra; and multiple dictionaries require different configurations.

Also, a dictionary can be used in multiple input schemas. If a schema
builds all its referenced dictionaries, then the shared ones are built
multiple times, and even worse, built with different configurations each
time.
居戎氏 @.***> 於 2023年5月24日 週三 上午11:55寫道：

Current solution: define a separate *.schema.yaml file for building other
dictionaries, and list the added schema in schema/dependencies.
One input schema cannot be used to build multiple dictionaries, because
building a dictionary uses configurations defined in the schema, like
speller/algebra; and multiple dictionaries require different
configurations.
—
Reply to this email directly, view it on GitHub
https://github.com/rime/librime/issues/655#issuecomment-1560422638, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AE2QAJYI3YEJLKJU6UEYKS3XHWBBHANCNFSM6AAAAAAYMWF5RI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I see, thank you for your explanation!


always write file type

For some reason, micromamba didn't end up in the binary replacement loop when not explicitly mentioning binary. I think we should check wether that is wrong behavior in micromamba, or wether we should (always) write the filetype when binary vs. text or idk.
I also noticed a mix of text & binary and no classification when I checked some other paths.json files and couldn't figure out what the default is from just looking at them now.

yes, good point! We could also spend some more time figuring out how conda-build behaves in this case :)

OK, I checked more deeply. They only write the file mode if there is a prefix_placeholder, and otherwise leave it out. So these two fields are coupled for serialization.

Ah that makes sense! We can also do that by moving the prefix placeholder to the enum and making it optional

This is superseded by #136