Re: [Catalyst] Installing Catalyst::Authentication::Store::DBIx::Class Breaks Catalyst
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
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
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
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
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
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
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
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
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
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
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
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
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
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/