From: Aran Deltac Date: Mon, 6 Nov 2006 17:03:32 +0000 (+0000) Subject: Add dist files (MANIFEST, META.yml, Makefile.pl, etc). X-Git-Tag: 0.03001~11 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=609f3762041d091605655b61642f5a70c4e9911b;p=dbsrgits%2FDBIx-Class-Tree.git Add dist files (MANIFEST, META.yml, Makefile.pl, etc). --- diff --git a/Build.PL b/Build.PL index ab17675..a5f5052 100644 --- a/Build.PL +++ b/Build.PL @@ -1,5 +1,6 @@ use strict; use Module::Build; +use Module::Build::Compat; my %arguments = ( create_makefile_pl => 'passthrough', @@ -15,5 +16,5 @@ my %arguments = ( test_files => [ glob('t/*.t'), glob('t/*/*.t') ] ); -Module::Build->new(%arguments)->create_build_script; +Module::Build->new(%arguments)->create_build_script(); diff --git a/Changes b/Changes index e14e816..2b391c6 100644 --- a/Changes +++ b/Changes @@ -1,7 +1,7 @@ Revision history for DBIx::Class::Tree -0.01000 +0.01000 2006-11-06 - Added is_leaf, is_root, and is_branch to AdjacencyList. - Added a validation override for set_primary_key(). - Removed the _grouping_clause override method. diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..94f1023 --- /dev/null +++ b/MANIFEST @@ -0,0 +1,18 @@ +Build.PL +Changes +lib/DBIx/Class/Tree.pm +lib/DBIx/Class/Tree/AdjacencyList.pm +lib/DBIx/Class/Tree/AdjacencyList/Ordered.pm +Makefile.PL +MANIFEST This list of files +META.yml +README +t/01_pod.t +t/10_adjacencylist.t +t/11_adjacencylist_ordered.t +t/lib/sqlite.sql +t/lib/TreeTest.pm +t/lib/TreeTest/Schema.pm +t/lib/TreeTest/Schema/Node.pm +t/var/test.db +TODO diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP new file mode 100644 index 0000000..94f68c6 --- /dev/null +++ b/MANIFEST.SKIP @@ -0,0 +1,39 @@ +# Avoid version control files. +\bRCS\b +\bCVS\b +,v$ +\B\.svn\b +\B\.cvsignore$ + +# Avoid Makemaker generated and utility files. +\bMakefile$ +\bblib +\bMakeMaker-\d +\bpm_to_blib$ +\bblibdirs$ +^MANIFEST\.SKIP$ + +# Avoid Module::Build generated and utility files. +\bBuild$ +\bBuild.bat$ +\b_build + +# Avoid Devel::Cover generated files +\bcover_db + +# Avoid temp and backup files. +~$ +\.tmp$ +\.old$ +\.bak$ +\#$ +\.# +\.rej$ + +# Avoid OS-specific files/dirs +# Mac OSX metadata +\B\.DS_Store +# Mac OSX SMB mount metadata files +\B\._ +# Avoid archives of this distribution +\bDBIx-Class-Tree-[\d\.\_]+ diff --git a/META.yml b/META.yml new file mode 100644 index 0000000..4e16cc4 --- /dev/null +++ b/META.yml @@ -0,0 +1,25 @@ +--- +name: DBIx-Class-Tree +version: 0.01000 +author: + - 'Aran Clary Deltac ' +abstract: Manipulate and anaylze tree structured data. (EXPERIMENTAL) +license: perl +resources: + license: http://dev.perl.org/licenses/ +requires: + DBIx::Class: 0.06 +build_requires: + DBD::SQLite: 1.11 +provides: + DBIx::Class::Tree: + file: lib/DBIx/Class/Tree.pm + version: 0.01000 + DBIx::Class::Tree::AdjacencyList: + file: lib/DBIx/Class/Tree/AdjacencyList.pm + DBIx::Class::Tree::AdjacencyList::Ordered: + file: lib/DBIx/Class/Tree/AdjacencyList/Ordered.pm +generated_by: Module::Build version 0.2805 +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.2.html + version: 1.2 diff --git a/Makefile.PL b/Makefile.PL new file mode 100644 index 0000000..192903a --- /dev/null +++ b/Makefile.PL @@ -0,0 +1,31 @@ +# Note: this file was auto-generated by Module::Build::Compat version 0.03 + + unless (eval "use Module::Build::Compat 0.02; 1" ) { + print "This module requires Module::Build to install itself.\n"; + + require ExtUtils::MakeMaker; + my $yn = ExtUtils::MakeMaker::prompt + (' Install Module::Build now from CPAN?', 'y'); + + unless ($yn =~ /^y/i) { + die " *** Cannot install without Module::Build. Exiting ...\n"; + } + + require Cwd; + require File::Spec; + require CPAN; + + # Save this 'cause CPAN will chdir all over the place. + my $cwd = Cwd::cwd(); + + CPAN::Shell->install('Module::Build::Compat'); + CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate + or die "Couldn't install Module::Build, giving up.\n"; + + chdir $cwd or die "Cannot chdir() back to $cwd: $!"; + } + eval "use Module::Build::Compat 0.02; 1" or die $@; + + Module::Build::Compat->run_build_pl(args => \@ARGV); + require Module::Build; + Module::Build::Compat->write_makefile(build_class => 'Module::Build'); diff --git a/README b/README new file mode 100644 index 0000000..e6868b4 --- /dev/null +++ b/README @@ -0,0 +1,35 @@ +NAME + DBIx::Class::Tree - Manipulate and anaylze tree structured data. + (EXPERIMENTAL) + +DESCRIPTION + The tree modules provide the tools to represent, modify, and analyze + trees of data with DBIx::Class. + +COMPONENTS + DBIx::Class::Tree::AdjacencyList - Manage a tree of data using the + common adjacency list model. (EXPERIMENTAL) + + DBIx::Class::Tree::AdjacencyList::Ordered - Glue DBIx::Class::Ordered + and DBIx::Class::Tree::AdjacencyList together. (EXPERIMENTAL) + +DAG + All tree related modules must conform to have and use the basic + traversal methods of a DAG. For the most part this just means that Tree + modules must provide the appearance of having multiple parents per node + (via a parents() method) but may very well never return more than one + parent. All utility modules, such as a Visitor module, should do its + best to never assume that a node only has one parent. There are + situations where this is not possible - in those cases the module's + documentation should clearly state that it is not compatible with DAGs. + + So far there is no Tree::DAG module, but there will be. These + requirements are vague, and the requirements of Tree modules to be DAG + compatible will become more defined in due course. + +AUTHOR + Aran Clary Deltac + +LICENSE + You may distribute this code under the same terms as Perl itself. + diff --git a/TODO b/TODO index 1e666a1..2213fe8 100644 --- a/TODO +++ b/TODO @@ -1,11 +1,12 @@ - Support DAGs. - Tree::Visitor - - Come up with a better name for attach_before and + - Come up with a better name for attach_before and attach_after. - Support multiple columns for ordering. - - Declare both the parent column and the position column + - Declare both the parent column and the position column in one call. - - Add an ancestors() and descendants() method with + - Add an ancestors() and descendants() method with support for resultset cacheing. + - Not all methods are covered by the tests.