Re: Module take-over policy

2017-03-28 Thread Richard Hainsworth
True in theory: the meta data for different modules, such as version and 
auth, exist.


In practice: so far as I know, (1) :auth is ignored, (2) the ecosystem 
has no 'top-level' mechanism


Two situations:

a) a new environment is being created, so all modules should be the most 
recent.


Which module (of two with the same name, but different :auth) should be 
chosen? This default module is what I meant by 'top-level'.


Will the ecosystem display all modules?

b) an old environment is being maintained, and dependencies require 
older versions.


It seems to me that the way the specifications have been written, 
situation (b) is provided for. But it is also the more likely scenario 
for a well-established language with a gradual evolution (perl 5).


But situation (a) seems to me to be the most likely for a new, rapidly 
evolving, language. It is already a problem.



On Wednesday, March 29, 2017 12:05 PM, Brad Gilbert wrote:

Responses inline

On Tue, Mar 28, 2017 at 10:37 PM, Richard Hainsworth
 wrote:

I've seen a couple of references to modules that no longer work; it's
inevitable with a new language.

There is a balance between having respect for / protecting the original
developer, and also keeping a useful module up to date when the original
developer moves on / gets bored / dies / falls in love with someone else.

Developers see a protocol for adding a module to the ecosystem. I think it
would be effective for the perl6 community to have a visible protocol for
dealing with 'abandoned' modules. If it's visible at the start, it is
difficult to complain about arbitrary decisions later.

Anyone should be able to release a module with the same name,
it will just have a different :auth<>
So anyone can fix it and upload it, if there isn't a licence problem.

That leaves a few other problems. For one the old unmaintained module
would still
be there, and still be the newest version from that :auth<>.
We would probably need a procedure to get it de-listed.

Basically I think we are in a slightly unique situation, and we may just have
to wait and see where the chips fall for some of it.


I came across the following, which I thought made the balance in a
reasonable way:

https://learn.getgrav.org/advanced/grav-development#abandoned-resource-protocol

Richard Hainsworth

Some of that can be re-used, and it is very similar to the procedure
for Perl 5 modules.


Interactive terminal modules?

2017-03-28 Thread Chris Ramsey
I've been googling a bunch but can't find diddly for creating ncurses style
interactive terminals in Perl 6.

Sorry for such a vague question, but are there built-in modules for such a
thing, and if so, what is it called so I can dive through the docs?

Thanks!


Re: Bug report for Crypt::Bcrypt - cannot install

2017-03-28 Thread Gabor Szabo
Thanks for the quick reply.

That looks like a similar issue, but as I can see Crypt::Bcrypt does
not depend on 'if'.
It has this bug on its own :)

Gabor


On Tue, Mar 28, 2017 at 9:45 PM, Will Coleda  wrote:
> Looks like you already found the dependency that is failing:
> https://github.com/FROGGS/p6-if/issues/2
>
> The original module doesn't have a bug queue, and I don't think we
> have a community solution to authors that don't have bugqueues.
> (except to kindly ask them to enable them)
>
>
>
> On Tue, Mar 28, 2017 at 2:33 PM, Gabor Szabo  wrote:
>> I've just tried to install Crypt::Bcrypt into my Docker based Rakudo
>> but it failed.
>> I checked the GitHub repo of the project
>> https://github.com/skinkade/p6-Crypt-Bcrypt
>> that was linked from modules.perl6.org but it could not find the way
>> to submit bug reports.
>>
>> Where should I report it?
>>
>>
>> # perl6 -v
>> This is Rakudo version 2017.01 built on MoarVM version 2017.01
>> implementing Perl 6.c.
>>
>>
>> # zef install Crypt::Bcrypt
>> ===> Searching for: Crypt::Bcrypt
>> ===> Searching for missing dependencies: Crypt::Random
>> ===> Searching for missing dependencies: if
>> ===> Fetching: Crypt::Bcrypt
>> ===> Fetching: Crypt::Random
>> ===> Fetching: if
>> ===> Building: Crypt::Bcrypt:ver('1.3.1')
>> ===> Building [OK] for Crypt::Bcrypt:ver('1.3.1')
>> ===> Testing: if:ver('0.1.0'):auth('github:FROGGS')
>> t/if.t ..1/5===SORRY!===
>> Cannot find method 'symtable' on object of type GLOBAL
>> # Looks like you planned 5 tests, but ran 1
>> t/if.t .. All 5 subtests passed
>> All tests successful.
>>
>> Test Summary Report
>> ---
>> t/if.t (Wstat: 0 Tests: 1 Failed: 0)
>>   Parse errors: Bad plan.  You planned 5 tests but ran 1.
>> Files=1, Tests=1,  1 wallclock secs
>> Result: FAILED
>> ===> Testing [FAIL]: if:ver('0.1.0'):auth('github:FROGGS')
>> Aborting due to test failure: if:ver('0.1.0'):auth('github:FROGGS')
>> (use --force to override)
>>   in code  at 
>> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
>> (Zef::Client) line 306
>>   in method test at
>> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
>> (Zef::Client) line 285
>>   in code  at 
>> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
>> (Zef::Client) line 457
>>   in sub  at 
>> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
>> (Zef::Client) line 454
>>   in method install at
>> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
>> (Zef::Client) line 560
>>   in sub MAIN at
>> /usr/share/perl6/site/sources/A9948E7371E0EB9AFDF1EEEB07B52A1B75537C31
>> (Zef::CLI) line 123
>>   in block  at
>> /usr/share/perl6/site/resources/3DD33EF601FD300095284AE7C24B770BAADAF32E
>> line 1
>
>
>
> --
> Will "Coke" Coleda


Re: Bug report for Crypt::Bcrypt - cannot install

2017-03-28 Thread Will Coleda
Looks like you already found the dependency that is failing:
https://github.com/FROGGS/p6-if/issues/2

The original module doesn't have a bug queue, and I don't think we
have a community solution to authors that don't have bugqueues.
(except to kindly ask them to enable them)



On Tue, Mar 28, 2017 at 2:33 PM, Gabor Szabo  wrote:
> I've just tried to install Crypt::Bcrypt into my Docker based Rakudo
> but it failed.
> I checked the GitHub repo of the project
> https://github.com/skinkade/p6-Crypt-Bcrypt
> that was linked from modules.perl6.org but it could not find the way
> to submit bug reports.
>
> Where should I report it?
>
>
> # perl6 -v
> This is Rakudo version 2017.01 built on MoarVM version 2017.01
> implementing Perl 6.c.
>
>
> # zef install Crypt::Bcrypt
> ===> Searching for: Crypt::Bcrypt
> ===> Searching for missing dependencies: Crypt::Random
> ===> Searching for missing dependencies: if
> ===> Fetching: Crypt::Bcrypt
> ===> Fetching: Crypt::Random
> ===> Fetching: if
> ===> Building: Crypt::Bcrypt:ver('1.3.1')
> ===> Building [OK] for Crypt::Bcrypt:ver('1.3.1')
> ===> Testing: if:ver('0.1.0'):auth('github:FROGGS')
> t/if.t ..1/5===SORRY!===
> Cannot find method 'symtable' on object of type GLOBAL
> # Looks like you planned 5 tests, but ran 1
> t/if.t .. All 5 subtests passed
> All tests successful.
>
> Test Summary Report
> ---
> t/if.t (Wstat: 0 Tests: 1 Failed: 0)
>   Parse errors: Bad plan.  You planned 5 tests but ran 1.
> Files=1, Tests=1,  1 wallclock secs
> Result: FAILED
> ===> Testing [FAIL]: if:ver('0.1.0'):auth('github:FROGGS')
> Aborting due to test failure: if:ver('0.1.0'):auth('github:FROGGS')
> (use --force to override)
>   in code  at 
> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
> (Zef::Client) line 306
>   in method test at
> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
> (Zef::Client) line 285
>   in code  at 
> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
> (Zef::Client) line 457
>   in sub  at 
> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
> (Zef::Client) line 454
>   in method install at
> /usr/share/perl6/site/sources/1DC0BAA246D0774E7EB4F5119C6168E0D8266EFA
> (Zef::Client) line 560
>   in sub MAIN at
> /usr/share/perl6/site/sources/A9948E7371E0EB9AFDF1EEEB07B52A1B75537C31
> (Zef::CLI) line 123
>   in block  at
> /usr/share/perl6/site/resources/3DD33EF601FD300095284AE7C24B770BAADAF32E
> line 1



-- 
Will "Coke" Coleda


Re: Am I suppose to be able to change a variable's type on the fly?

2017-03-28 Thread Brandon Allbery
On Tue, Mar 28, 2017 at 3:09 AM, Francesco Rivetti  wrote:

> you don't change the type of a variable. instead you use a type which is
> "broader" and accept any object type.


This; and if you didn't specify a type, the type is Any. Which is not quite
the root of the class/type hierarchy; that'd be Mu. The difference is that
Mu can hold junctions, whereas Any and its subclasses will force
"autothreading" of junctions (basically, computing all possible values "in
parallel").

-- 
brandon s allbery kf8nh   sine nomine associates
allber...@gmail.com  ballb...@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonadhttp://sinenomine.net


Re: Am I suppose to be able to change a variable's type on the fly?

2017-03-28 Thread Francesco Rivetti



On 22. mars 2017 06:59, ToddAndMargo wrote:

So, unless I specifically declare a variable as a
particular type, I can change its "type" on the fly.


you don't change the type of a variable. instead you use a type which is 
"broader" and accept any object type.


e.g.: you can assign 123 to an Int, but if you want to assign 0.5 as 
well, you need to use a variable type Numeric, which accept (is a 
superclass of) Int and Rat


F