Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-18 Thread Tomas Doran

kakim...@tpg.com.au wrote:

2) Modified MyApp.pm and Schema/Users.pm, Schema/UserRoles.pm and
Schema/Roles.pm to reflect my database model. This is what my MyApp.pm
has for plugins:

# Load plugins
use Catalyst qw/-Debug
ConfigLoader
Static::Simple

StackTrace

Authentication

Authentication::Credential::Password


^^ That's where you broke it. Right there..

Why did you add 'Authentication::Credential::Password' to the plugin 
list? What made you think this was a good idea or whould help? Where 
should we make it more clear in the documentation that this is the wrong 
thing to do?


Cheers
t0m

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-18 Thread Tomas Doran

kakim...@tpg.com.au wrote:

Hello, Collin,

 My modules are:


| Catalyst::Plugin::Authentication  0.10011
 |
| Catalyst::Plugin::Authentication::Credential::Password   


Woah there!

Why are you using Catalyst::Plugin::Authentication::Credential::Password?

From the documentation:

'THIS IS A COMPATIBILITY SHIM. It allows old configurations of Catalyst 
Authentication to work without code changes.


DO NOT USE IT IN ANY NEW CODE!'

You will be configuring authentication in the new style (as documented 
by the version of Plugin::Authentication you're running), and combining 
that with old-style authentication plugins _WILL NOT WORK_.


Cheers
t0m


___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-16 Thread kakimoto
hello, guys,
  I  have taken a copy of the tute codes which work for authrozation.

1) Created the required db tables in postgresql (made a new database)
2) Changed my lib/MyApp/Model/DB.pm to point to the new database I made
3) populated all the required values.
4) restarted the application
5) Managed to log in but an error message comes up on the web interface:

"Couldn't render template "undef error - role table does not have a
column called role at
/home/kakimoto/projects/esca/MyApp/root/src/books/list.tt2 line 50
"


This is really weird. I am using the same model files as per the tute
(no changes at all) . 

Here's  an extract of how my db looks like using pg_dump. I have also
attached a file here.

--Extract End--
--
-- Name: roles; Type: TABLE; Schema: public; Owner: myapp_user; Tablespace:
--

CREATE TABLE roles (
id integer NOT NULL,
role text
);


--
-- Name: user_roles; Type: TABLE; Schema: public; Owner: myapp_user;
Tablespace:
--

CREATE TABLE user_roles (
user_id integer NOT NULL,
role_id integer NOT NULL
);


CREATE TABLE users (
id integer NOT NULL,
username text,
password text,
email_address text,
first_name text,
last_name text,
active integer
);


--Extract End--





Could it be that there's some definition I never declare such that
Catalyst::Authentication::Store::DBIx::Class would know which is the
actual "Roles" db table to look at?




___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-16 Thread kakimoto
Hello, all,

  What I did:

1) Downloaded a copy of the tute codes for
http://search.cpan.org/~hkclark/Catalyst-Manual-5.7021/lib/Catalyst/Manual/Tutorial/Authorization.pod
1.5) Works Very well! :D

2) Modified MyApp.pm and Schema/Users.pm, Schema/UserRoles.pm and
Schema/Roles.pm to reflect my database model. This is what my MyApp.pm
has for plugins:

# Load plugins
use Catalyst qw/-Debug
ConfigLoader
Static::Simple

StackTrace

Authentication

Authentication::Credential::Password
Authorization::Roles


Session
Session::Store::FastMmap
Session::State::Cookie
/;






3) Ran application ( DBIC_TRACE=1 perl script/myapp_server.pl ). I did
see the sql that queries the "Users" database table (which is expected)
but no other sqls that query the "UserRoles" and/or "Roles" database
table. Any idea why?


4) Can log in (authentication is OK) but can't user object can't show
the roles of the current user.
In my MyApp::Controller::Login.pm, I have the following:



  if ($c->authenticate ( {'username' => $username, 'password'=>
$password} ))
  {
## If successful, then let them use the application
if ($c->check_user_roles( "admin" ))
{
$c->log->debug(" Admin TRACKED " );
}
else{
$c->log->debug(" Admin NOT TRACKED " );
}

   ...
 }


I keep seeing " Admin NOT TRACKED" implying that the user object is not
finding the roles.


As my application runs on a database backend, I don't think it's going
to be possible for me to include it in this post. 

I am really suspecting that  Roles Authorization (with a database
backend using Catalyst::Authentication::Store::DBIx::Class ) doesn't
work at all or is broken.
 


Question:

1) Anyone else having problems with using Roles Authorization (with a
database backend using Catalyst::Authentication::Store::DBIx::Class )? 
2) Any up-to-date documentation to illustrate on roles Authorization set
up using a database backend available?


I am very sorry to trouble you guys but I am really wanting to use the
Authorization plugins in Catalyst (to keep everything in my application
in the theme of Catalyst) , but after many hours , reading and trying
different methods to debug, I can't seem to get it working

Please help:)

Thank you.

K. akimoto







Quoting kakim...@tpg.com.au:

> Hello, Collin,
> 
>  My modules are:
> 
> 
> | Catalyst::Plugin::Authentication  0.10011  
>  
>  |
> | Catalyst::Plugin::Authentication::Credential::Password 
>  
>  |
> | Catalyst::Plugin::Authorization::Roles  0.07   
>  
>  |
> 
\




___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-16 Thread kakimoto
Hello, Collin,

 My modules are:


| Catalyst::Plugin::Authentication  0.10011
 |
| Catalyst::Plugin::Authentication::Credential::Password   
 |
| Catalyst::Plugin::Authorization::Roles  0.07 
 |

 What are you using? Mine's still not working . Even downloaded the
codes for tute 6
(http://search.cpan.org/~hkclark/Catalyst-Manual-5.7021/lib/Catalyst/Manual/Tutorial/Authorization.pod)

and it still doesn't work...
Weird..
 Will work on it more today and will revert

K. akimoto




Quoting Collin Condray :

> It looks like the problem is resolved. I upgraded to the latest
> version of
> Catalyst and Authentication/Authorization started working normally.
> Funny
> how that happens.
> 
> Thanks for the follow up. I appreciate it!
> 
> Collin Condray
> condray.net
> 
> 
> On Tue, May 12, 2009 at 7:28 AM,  wrote:
> 
> > Hello, Collin
> >
> >  I have the same configuration and output of the Catalyst config
> too!
> >
> > My problem is a bit different. I could login but the accounts that
> have
> > 'admin' roles would never get detected of the 'admin' role.
> >
> >  How are you doing with this issue?
> >
> >
> > Guys, please comment.
> >
> >  Thank you:)
> >
> > K. akimoto
> >
> >
> > Quoting Collin Condray :
> >
> > > Tomas,
> > >
> > > Here's the config section of the debug output:
> > >
> > > do {
> > >   my $a = {
> > > "Action::RenderView" => {
> > >   ignore_classes => [
> > >  
> "DBIx::Class::ResultSource::Table",
> > >   "DBIx::Class::ResultSourceHandle",
> > >   "DateTime",
> > > ],
> > >   scrubber_func  => sub { "???" },
> > > },
> > > "Plugin::Authentication" => {
> > >   default_realm => "dbic",
> > >   realms => {
> > > dbic => {
> > >   credential => {
> > > class => "Password",
> > > password_field => "password",
> > > password_hash_type => "SHA-1",
> > > password_type => "hashed",
> > >   },
> > >   store => {
> > > class => "DBIx::Class",
> > > "ignore_fields_in_find" => [],
> > > role_field => "role",
> > > role_relation => "roles",
> > > store_user_class =>
> > > "Catalyst::Authentication::Store::DBIx::Class::User",
> > > user_class => "myappDB::Users",
> > >   },
> > >   use_session => 1,
> > > },
> > >   },
> > >   use_session => 1,
> > > },
> > > "Plugin::ConfigLoader" => {},
> > > authentication => 'fix',
> > > "custom-error-messsage" => { "error-template" =>
> > > "internal_error.tt",
> > > "view-name" => "TToolkit" },
> > > email => ["Sendmail"],
> > > home => "/home/.avis/username/domainname.com/myapp",
> > > name => "myapp",
> > > require_ssl => { no_cache => 0, remain_in_ssl => 1 },
> > > root => bless({
> > >   dirs => [
> > > "",
> > > "home",
> > > ".avis",
> > > "username",
> > > "domainname.com",
> > > "myapp",
> > > "root",
> > >   ],
> > >   file_spec_class => undef,
> >
> 




___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-14 Thread Collin Condray
It looks like the problem is resolved. I upgraded to the latest version of
Catalyst and Authentication/Authorization started working normally. Funny
how that happens.

Thanks for the follow up. I appreciate it!

Collin Condray
condray.net


On Tue, May 12, 2009 at 7:28 AM,  wrote:

> Hello, Collin
>
>  I have the same configuration and output of the Catalyst config too!
>
> My problem is a bit different. I could login but the accounts that have
> 'admin' roles would never get detected of the 'admin' role.
>
>  How are you doing with this issue?
>
>
> Guys, please comment.
>
>  Thank you:)
>
> K. akimoto
>
>
> Quoting Collin Condray :
>
> > Tomas,
> >
> > Here's the config section of the debug output:
> >
> > do {
> >   my $a = {
> > "Action::RenderView" => {
> >   ignore_classes => [
> >   "DBIx::Class::ResultSource::Table",
> >   "DBIx::Class::ResultSourceHandle",
> >   "DateTime",
> > ],
> >   scrubber_func  => sub { "???" },
> > },
> > "Plugin::Authentication" => {
> >   default_realm => "dbic",
> >   realms => {
> > dbic => {
> >   credential => {
> > class => "Password",
> > password_field => "password",
> > password_hash_type => "SHA-1",
> > password_type => "hashed",
> >   },
> >   store => {
> > class => "DBIx::Class",
> > "ignore_fields_in_find" => [],
> > role_field => "role",
> > role_relation => "roles",
> > store_user_class =>
> > "Catalyst::Authentication::Store::DBIx::Class::User",
> > user_class => "myappDB::Users",
> >   },
> >   use_session => 1,
> > },
> >   },
> >   use_session => 1,
> > },
> > "Plugin::ConfigLoader" => {},
> > authentication => 'fix',
> > "custom-error-messsage" => { "error-template" =>
> > "internal_error.tt",
> > "view-name" => "TToolkit" },
> > email => ["Sendmail"],
> > home => "/home/.avis/username/domainname.com/myapp",
> > name => "myapp",
> > require_ssl => { no_cache => 0, remain_in_ssl => 1 },
> > root => bless({
> >   dirs => [
> > "",
> > "home",
> > ".avis",
> > "username",
> > "domainname.com",
> > "myapp",
> > "root",
> >   ],
> >   file_spec_class => undef,
>
___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-05-12 Thread kakimoto
Hello, Collin

  I have the same configuration and output of the Catalyst config too!

My problem is a bit different. I could login but the accounts that have
'admin' roles would never get detected of the 'admin' role.

  How are you doing with this issue?


Guys, please comment.

 Thank you:)

K. akimoto


Quoting Collin Condray :

> Tomas,
> 
> Here's the config section of the debug output:
> 
> do {
>   my $a = {
> "Action::RenderView" => {
>   ignore_classes => [
>   "DBIx::Class::ResultSource::Table",
>   "DBIx::Class::ResultSourceHandle",
>   "DateTime",
> ],
>   scrubber_func  => sub { "???" },
> },
> "Plugin::Authentication" => {
>   default_realm => "dbic",
>   realms => {
> dbic => {
>   credential => {
> class => "Password",
> password_field => "password",
> password_hash_type => "SHA-1",
> password_type => "hashed",
>   },
>   store => {
> class => "DBIx::Class",
> "ignore_fields_in_find" => [],
> role_field => "role",
> role_relation => "roles",
> store_user_class =>
> "Catalyst::Authentication::Store::DBIx::Class::User",
> user_class => "myappDB::Users",
>   },
>   use_session => 1,
> },
>   },
>   use_session => 1,
> },
> "Plugin::ConfigLoader" => {},
> authentication => 'fix',
> "custom-error-messsage" => { "error-template" =>
> "internal_error.tt",
> "view-name" => "TToolkit" },
> email => ["Sendmail"],
> home => "/home/.avis/username/domainname.com/myapp",
> name => "myapp",
> require_ssl => { no_cache => 0, remain_in_ssl => 1 },
> root => bless({
>   dirs => [
> "",
> "home",
> ".avis",
> "username",
> "domainname.com",
> "myapp",
> "root",
>   ],
>   file_spec_class => undef,

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-08 Thread Collin Condray
Tomas,

Here's the config section of the debug output:

do {
  my $a = {
"Action::RenderView" => {
  ignore_classes => [
  "DBIx::Class::ResultSource::Table",
  "DBIx::Class::ResultSourceHandle",
  "DateTime",
],
  scrubber_func  => sub { "???" },
},
"Plugin::Authentication" => {
  default_realm => "dbic",
  realms => {
dbic => {
  credential => {
class => "Password",
password_field => "password",
password_hash_type => "SHA-1",
password_type => "hashed",
  },
  store => {
class => "DBIx::Class",
"ignore_fields_in_find" => [],
role_field => "role",
role_relation => "roles",
store_user_class =>
"Catalyst::Authentication::Store::DBIx::Class::User",
user_class => "myappDB::Users",
  },
  use_session => 1,
},
  },
  use_session => 1,
},
"Plugin::ConfigLoader" => {},
authentication => 'fix',
"custom-error-messsage" => { "error-template" => "internal_error.tt",
"view-name" => "TToolkit" },
email => ["Sendmail"],
home => "/home/.avis/username/domainname.com/myapp",
name => "myapp",
require_ssl => { no_cache => 0, remain_in_ssl => 1 },
root => bless({
  dirs => [
"",
"home",
".avis",
"username",
"domainname.com",
"myapp",
"root",
  ],
  file_spec_class => undef,
  volume => "",
}, "Path::Class::Dir"),
session => {
  cookie_name=> "myapp_session",
  expires=> 7200,
  storage=> "/tmp/myapp/session_data",
  verify_address => 0,
},
stacktrace => { context => 3, verbose => 0 },
static => {
  debug => 1,
  dirs => [],
  ignore_dirs => [],
  ignore_extensions => ["tmpl", "tt", "tt2", "html", "xhtml"],
  include_path => ['fix'],
  mime_types => {},
  mime_types_obj => bless({}, "MIME::Types"),
  no_logs => 1,
},
test_mode => 1,
  };
  $a->{authentication} = $a->{"Plugin::Authentication"};
  $a->{static}{include_path}[0] = $a->{root};
  $a;
}

So it looks like the Authentication plugin is loading and the default_realm
is dbic. Should I also be seeing something about the other
authentication/authorization plugins (i.e. Authorization::Roles,
Authorization::ACL)?

Once again I appreciate the help!

Collin Condray
condray.net


On Wed, Apr 8, 2009 at 7:26 AM, Tomas Doran  wrote:

> Collin Condray wrote:
>
>> As J. has requested here are the relevant parts of my configuration files:
>>
>
> 'Session::Store::FastMmap',
>>
>
> I'd be prepared to bet that the issue with C3 was related to an old version
> of this plugin. Upgrading this will have solved your issue, not DBIC or
> Class::C3(::XS)?
>
>
>> name myapp
>> 
>>default_realm dbic
>>
>>
>>
>>
> 
>
>>
>>
>># Use DBIC to retrieve username, password & role
>> information
>>class DBIx::Class
>>
> 
>
>>
>>
>>
>> 
>>
>> The error message that is now showing up in my logs is: "No Store
>> specified for realm "dbic", using the Null store."
>>
>
> Hmm, this all looka correct to my eyes, however Catalyst seemingly isn't
> seeing that config correctly.
>
>
>> Thanks again for the responses. Again, please let me know if there's any
>> other information I can provide.
>>
>
> If you start your app in debug mode, and append ?dump_info=1 to a request,
> then paste the 'config' part of the debug screen, that'll give us what
> Catalyst has actually loaded as the config - I guess that'll be different to
> what you _think_ Catalyst is loading as your config from your config file..
>
> Cheers
> t0m
>
>
> ___
> List: Catalyst@lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-08 Thread Tomas Doran

Collin Condray wrote:

As J. has requested here are the relevant parts of my configuration files:



'Session::Store::FastMmap',


I'd be prepared to bet that the issue with C3 was related to an old 
version of this plugin. Upgrading this will have solved your issue, not 
DBIC or Class::C3(::XS)?




name myapp

default_realm dbic








# Use DBIC to retrieve username, password & role information
class DBIx::Class








The error message that is now showing up in my logs is: "No Store 
specified for realm "dbic", using the Null store."


Hmm, this all looka correct to my eyes, however Catalyst seemingly isn't 
seeing that config correctly.




Thanks again for the responses. Again, please let me know if there's any 
other information I can provide.


If you start your app in debug mode, and append ?dump_info=1 to a 
request, then paste the 'config' part of the debug screen, that'll give 
us what Catalyst has actually loaded as the config - I guess that'll be 
different to what you _think_ Catalyst is loading as your config from 
your config file..


Cheers
t0m


___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


[Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-08 Thread Collin Condray
Thanks everyone for their quick responses to my issue. Between upgrading to
the latest version of Catalyst and commenting out all references to the
Authentication module I can get the vast majority of the site's
functionality working which is good enough for my immediate purposes. I've
also updated DBIx::Class, Class::C3 and
Class::C3::XS as suggested. So now, my issue is no longer urgent just
puzzling.

As J. has requested here are the relevant parts of my configuration files:

myapp.pm

use Catalyst (
#'-Debug',
'ConfigLoader',
'Static::Simple',
'StackTrace',
'Session',
'Session::Store::FastMmap',
'Session::State::Cookie',
'Authentication',

'Authorization::Roles',
'Authorization::ACL',

'RequireSSL',
'Email',
'CustomErrorMessage',

our $VERSION = '0.01';

__PACKAGE__->config( name => 'myapp' );

# Start the application
__PACKAGE__->setup;

# Authorization::ACL Rules
__PACKAGE__->deny_access_unless( "/admin", [qw/admin/], );

and myapp.conf

name myapp

default_realm dbic



# Note this first definition would be the same as setting
# __PACKAGE__->config->{authentication}->{realms}->{dbic}
# ->{credential} = 'Password' in lib/myapp.pm
#
# Specify that we are going to do password-based auth
class Password
# This is the name of the field in the users table with the
# password stored in it
password_field password
# Switch to more secure hashed passwords
#password_type clear
password_type  hashed
# Use the SHA-1 hashing algorithm
password_hash_type SHA-1


# Use DBIC to retrieve username, password & role information
class DBIx::Class
# This is the model object created by Catalyst::Model::DBIC
# from your schema (you created 'myapp::Schema::User' but as
# the Catalyst startup debug messages show, it was loaded as
# 'myapp::Model::DB::Users').
# NOTE: Omit 'myapp::Model' here just as you would when
using
# '$c->model("DB::Users)'
user_class myappDB::Users
# This is the name of a many_to_many relation in the users
# object that points to the roles for that user
role_relation  roles
# This is the name of field in the roles table that contains
# the role information
role_field role





The main exception to the tutorial method is that I'm using an email address
as the user name rather than a username field.

The error message that is now showing up in my logs is: "No Store specified
for realm "dbic", using the Null store."

Thanks again for the responses. Again, please let me know if there's any
other information I can provide.

Collin Condray
condray.net
___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-08 Thread Tomas Doran

Collin Condray wrote:
This completely rendered my site totally unusable. Now I am receiving 
the error:
Inconsistent hierarchy during C3 merge of class 'myAPP': merging failed 
on parent 'Class::Accessor::Fast' at 
/home/username/local/lib/perl/5.8.4/Class/C3/XS.pm line 56., referer: 
https://www.mysite.com/


I have been unable to find anything that I've been able to understand on 
the cause of this problem. Has anyone else come across this error 
message and if so, has anyone found a solution to it.


Yes.

If you remove /home/username/local/lib/perl/5.8.4/Class/C3/XS.pm then 
you'll get a better / more helpful error message.


The (brief) explanation is that somehow, your application is composed of 
base classes which cannot be resolved into a linear order.


Example:

package BaseLeft;
our $VERSION = 0.1;

package BaseRight;
our $VERSION = 0.1;

package A;
use base qw/BaseLeft BaseRight/;

package B;
use base qw/BaseRight BaseLeft/;

package CrashAndBurn;
use base qw/A B/;

Now, using Algorithm::C3, try to resolve a method call in 
CrashAndBurn... Answer - you can't!!! It doesn't make sense..


Which means that C3 resolution is going to explode, just as you're 
seeing. You should be able to look at the 'use base' lines in your 
plugins, and work out if you have this situation. Most often, its caused 
by code which says use base qw/Class::Data::Inheritable 
Class::Accessor::Fast/ (as everything else does it the other way round.


The most common plugin causing this is 
Catalyst::Plugin::Session::Store::FastMMap <= version 0.03. So if you're 
using that, upgrade, and it should fix your issues!


Cheers
t0m


___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-07 Thread J. Shirley
On Wed, Apr 8, 2009 at 1:18 PM, Collin Condray  wrote:

> I have been working on Catalyst project for some time and need a little
> help with a problem I've run into. I was following the instructions in the
> Authentication section of the Catalyst tutorial and trying to implement the
> hashed password feature. However, when I uncommented the "class DBIx::Class"
> line in my myapp.conf file, I got the following message in my logs:
>
> Can't locate Catalyst/Plugin/Authentication/Store/DBIx/Class.pm in @INC
>
> So I attempted to use CPAN to install
> Catalyst::Authentication::Store::DBIx::Class.
>
> This completely rendered my site totally unusable. Now I am receiving the
> error:
> Inconsistent hierarchy during C3 merge of class 'myAPP': merging failed on
> parent 'Class::Accessor::Fast' at
> /home/username/local/lib/perl/5.8.4/Class/C3/XS.pm line 56., referer:
> https://www.mysite.com/
>
> I have been unable to find anything that I've been able to understand on
> the cause of this problem. Has anyone else come across this error message
> and if so, has anyone found a solution to it.
>
> I'm getting close to launching a site that depends on Catalyst and my need
> is urgent. If I can provide any more information on my problem I'd be happy
> to supply it.
>
> Thanks in advance for the help.
>
> Collin Condray
> condray.net
>
> ___
> List: Catalyst@lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
>

Chances are you still have Authentication::DBIC::Schema being loaded as a
plugin, if so, take it out.  You should be using Catalyst::Authentication::
and -not- Catalyst::Plugin::Authentication modules for this.  Only load
Authentication as a plugin (Catalyst::Plugin::Authentication) and nothing
else in the Auth space as a plugin.

If not, or it doesn't fix it, paste your plugins and config into an email
and we can help.  Psychic Catalyst support is reserved on a case by case
basis.


-J
___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-07 Thread John Romkey

On Apr 8, 2009, at 12:18 AM, Collin Condray wrote:
I have been working on Catalyst project for some time and need a  
little help with a problem I've run into. I was following the  
instructions in the Authentication section of the Catalyst tutorial  
and trying to implement the hashed password feature. However, when I  
uncommented the "class DBIx::Class" line in my myapp.conf file, I  
got the following message in my logs:


Can't locate Catalyst/Plugin/Authentication/Store/DBIx/Class.pm in  
@INC


So I attempted to use CPAN to install  
Catalyst::Authentication::Store::DBIx::Class.


This completely rendered my site totally unusable. Now I am  
receiving the error:
Inconsistent hierarchy during C3 merge of class 'myAPP': merging  
failed on parent 'Class::Accessor::Fast' at /home/username/local/lib/ 
perl/5.8.4/Class/C3/XS.pm line 56., referer: https://www.mysite.com/


I have been unable to find anything that I've been able to  
understand on the cause of this problem. Has anyone else come across  
this error message and if so, has anyone found a solution to it.


I'm getting close to launching a site that depends on Catalyst and  
my need is urgent. If I can provide any more information on my  
problem I'd be happy to supply it.


Catalyst's authentication system changed substantially a while back  
(last summer, I think). As of that change, the only Catalyst::Plugin  
module you should be using for authentication is  
Catalyst::Plugin::Authentication. It will use other modules which live  
in the Catalyst::Authentication namespace rather than the  
Catalyst::Plugin::Authentication namespace, where older modules used  
to live. In theory the older ones should generally still work thanks  
to backwards-compatibility shims, but you might see problems with them  
over time.


What version of Catalyst::Plugin::Authentication are you using? The  
current one is 0.10011


I would make sure that you have the latest versions of Catalyst- 
Runtime, Catalyst::Plugin::Authentication, DBIx::Class, Class::C3 and  
Class::C3::XS installed. Class::C3 is what Catalyst and DBIx::Class  
use in order to handle object inheritance.


Could you share with us the code from your app's startup file which  
loads the Catalyst plugins, and also the relevant lines from your  
config file? Otherwise we don't have much to go on.

- john romkey
http://www.romkey.com/

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


[Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst

2009-04-07 Thread Collin Condray
I have been working on Catalyst project for some time and need a little help
with a problem I've run into. I was following the instructions in the
Authentication section of the Catalyst tutorial and trying to implement the
hashed password feature. However, when I uncommented the "class DBIx::Class"
line in my myapp.conf file, I got the following message in my logs:

Can't locate Catalyst/Plugin/Authentication/Store/DBIx/Class.pm in @INC

So I attempted to use CPAN to install
Catalyst::Authentication::Store::DBIx::Class.

This completely rendered my site totally unusable. Now I am receiving the
error:
Inconsistent hierarchy during C3 merge of class 'myAPP': merging failed on
parent 'Class::Accessor::Fast' at
/home/username/local/lib/perl/5.8.4/Class/C3/XS.pm line 56., referer:
https://www.mysite.com/

I have been unable to find anything that I've been able to understand on the
cause of this problem. Has anyone else come across this error message and if
so, has anyone found a solution to it.

I'm getting close to launching a site that depends on Catalyst and my need
is urgent. If I can provide any more information on my problem I'd be happy
to supply it.

Thanks in advance for the help.

Collin Condray
condray.net
___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/