1DBIx::Class::Optional::UDseeprenCdoenntcriiebsu(t3e)d PeDrBlIxD:o:cCulmaesnst:a:tOipotnional::Dependencies(3)
2
3
4

NAME

6       DBIx::Class::Optional::Dependencies - Optional module dependency
7       specifications (for module authors)
8

SYNOPSIS

10       Somewhere in your build-file (e.g. Module::Install's Makefile.PL):
11
12         ...
13
14         configure_requires 'DBIx::Class' => '0.082841';
15
16         require DBIx::Class::Optional::Dependencies;
17
18         my $deploy_deps = DBIx::Class::Optional::Dependencies->req_list_for('deploy');
19
20         for (keys %$deploy_deps) {
21           requires $_ => $deploy_deps->{$_};
22         }
23
24         ...
25
26       Note that there are some caveats regarding "configure_requires()", more
27       info can be found at "configure_requires" in Module::Install
28

DESCRIPTION

30       Some of the less-frequently used features of DBIx::Class have external
31       module dependencies on their own. In order not to burden the average
32       user with modules he will never use, these optional dependencies are
33       not included in the base Makefile.PL. Instead an exception with a
34       descriptive message is thrown when a specific feature is missing one or
35       several modules required for its operation. This module is the central
36       holding place for  the current list of such dependencies, for
37       DBIx::Class core authors, and DBIx::Class extension authors alike.
38

CURRENT REQUIREMENT GROUPS

40       Dependencies are organized in "groups" and each group can list one or
41       more required modules, with an optional minimum version (or 0 for any
42       version).  The group name can be used in the
43
44   DBIx::Class::Admin
45       Modules required for the DBIx::Class administrative library
46
47       ·   JSON::Any >= 1.23
48
49       ·   Moose >= 0.98
50
51       ·   MooseX::Types >= 0.21
52
53       ·   MooseX::Types::JSON >= 0.02
54
55       ·   MooseX::Types::LoadableClass >= 0.011
56
57       ·   MooseX::Types::Path::Class >= 0.05
58
59       Requirement group: admin
60
61   dbicadmin
62       Modules required for the CLI DBIx::Class interface dbicadmin
63
64       ·   Getopt::Long::Descriptive >= 0.081
65
66       ·   JSON::Any >= 1.23
67
68       ·   Moose >= 0.98
69
70       ·   MooseX::Types >= 0.21
71
72       ·   MooseX::Types::JSON >= 0.02
73
74       ·   MooseX::Types::LoadableClass >= 0.011
75
76       ·   MooseX::Types::Path::Class >= 0.05
77
78       ·   Text::CSV >= 1.16
79
80       Requirement group: admin_script
81
82   Storage::DBI::deploy()
83       Modules required for "deployment_statements" in
84       DBIx::Class::Storage::DBI and "deploy" in DBIx::Class::Schema
85
86       ·   SQL::Translator >= 0.11018
87
88       Requirement group: deploy
89
90   Sybase ASE support
91       Modules required to connect to Sybase ASE
92
93       ·   DBD::Sybase
94
95       Requirement group: rdbms_ase
96
97   DB2 support
98       Modules required to connect to DB2
99
100       ·   DBD::DB2
101
102       Requirement group: rdbms_db2
103
104   DB2 on AS/400 support
105       Modules required to connect to DB2 on AS/400
106
107       ·   DBD::ODBC
108
109       Requirement group: rdbms_db2_400
110
111   Firebird support
112       Modules required to connect to Firebird
113
114       ·   DBD::Firebird
115
116       Requirement group: rdbms_firebird
117
118   Firebird support via DBD::InterBase
119       Modules required to connect to Firebird via DBD::InterBase
120
121       ·   DBD::InterBase
122
123       Requirement group: rdbms_firebird_interbase
124
125   Firebird support via DBD::ODBC
126       Modules required to connect to Firebird via DBD::ODBC
127
128       ·   DBD::ODBC
129
130       Requirement group: rdbms_firebird_odbc
131
132   Informix support
133       Modules required to connect to Informix
134
135       ·   DBD::Informix
136
137       Requirement group: rdbms_informix
138
139   MS Access support via DBD::ADO (Windows only)
140       Modules required to connect to MS Access via DBD::ADO. This particular
141       DBD is available on Windows only
142
143       ·   DBD::ADO
144
145       Requirement group: rdbms_msaccess_ado
146
147   MS Access support via DBD::ODBC
148       Modules required to connect to MS Access via DBD::ODBC
149
150       ·   DBD::ODBC
151
152       Requirement group: rdbms_msaccess_odbc
153
154   MSSQL support via DBD::ADO (Windows only)
155       Modules required to connect to MSSQL via DBD::ADO. This particular DBD
156       is available on Windows only
157
158       ·   DBD::ADO
159
160       Requirement group: rdbms_mssql_ado
161
162   MSSQL support via DBD::ODBC
163       Modules required to connect to MSSQL via DBD::ODBC
164
165       ·   DBD::ODBC
166
167       Requirement group: rdbms_mssql_odbc
168
169   MSSQL support via DBD::Sybase
170       Modules required to connect to MSSQL via DBD::Sybase
171
172       ·   DBD::Sybase
173
174       Requirement group: rdbms_mssql_sybase
175
176   MySQL support
177       Modules required to connect to MySQL
178
179       ·   DBD::mysql
180
181       Requirement group: rdbms_mysql
182
183   Oracle support
184       Modules required to connect to Oracle
185
186       ·   DBD::Oracle
187
188       ·   Math::Base36 >= 0.07
189
190       ·   Math::BigInt >= 1.80
191
192       Requirement group: rdbms_oracle
193
194   PostgreSQL support
195       Modules required to connect to PostgreSQL
196
197       ·   DBD::Pg
198
199       Requirement group: rdbms_pg
200
201   SQLAnywhere support
202       Modules required to connect to SQLAnywhere
203
204       ·   DBD::SQLAnywhere
205
206       Requirement group: rdbms_sqlanywhere
207
208   SQLAnywhere support via DBD::ODBC
209       Modules required to connect to SQLAnywhere via DBD::ODBC
210
211       ·   DBD::ODBC
212
213       Requirement group: rdbms_sqlanywhere_odbc
214
215   SQLite support
216       Modules required to connect to SQLite
217
218       ·   DBD::SQLite
219
220       Requirement group: rdbms_sqlite
221
222   Storage::Replicated
223       Modules required for DBIx::Class::Storage::DBI::Replicated
224
225       ·   Moose >= 0.98
226
227       ·   MooseX::Types >= 0.21
228
229       ·   MooseX::Types::LoadableClass >= 0.011
230
231       Requirement group: replicated
232

METHODS

234   req_group_list
235       Arguments: none
236       Return Value: \%list_of_requirement_groups
237
238       This method should be used by DBIx::Class packagers, to get a hashref
239       of all dependencies keyed by dependency group. Each key (group name)
240       can be supplied to one of the group-specific methods below.
241
242   req_list_for
243       Arguments: $group_name
244       Return Value: \%list_of_module_version_pairs
245
246       This method should be used by DBIx::Class extension authors, to
247       determine the version of modules a specific feature requires in the
248       current version of DBIx::Class. See the "SYNOPSIS" for a real-world
249       example.
250
251   req_ok_for
252       Arguments: $group_name
253       Return Value: 1|0
254
255       Returns true or false depending on whether all modules required by
256       $group_name are present on the system and loadable.
257
258   req_missing_for
259       Arguments: $group_name
260       Return Value: $error_message_string
261
262       Returns a single line string suitable for inclusion in larger error
263       messages.  This method would normally be used by DBIx::Class core-
264       module author, to indicate to the user that he needs to install
265       specific modules before he will be able to use a specific feature.
266
267       For example if some of the requirements for "deploy" are not available,
268       the returned string could look like:
269
270        SQL::Translator >= 0.11018 (see DBIx::Class::Optional::Dependencies for details)
271
272       The author is expected to prepend the necessary text to this message
273       before returning the actual error seen by the user.
274
275   die_unless_req_ok_for
276       Arguments: $group_name
277
278       Checks if "req_ok_for" passes for the supplied $group_name, and in case
279       of failure throws an exception including the information from
280       "req_missing_for".
281
282   req_errorlist_for
283       Arguments: $group_name
284       Return Value: \%list_of_loaderrors_per_module
285
286       Returns a hashref containing the actual errors that occurred while
287       attempting to load each module in the requirement group.
288

FURTHER QUESTIONS?

290       Check the list of additional DBIC resources.
291
293       This module is free software copyright by the DBIx::Class (DBIC)
294       authors. You can redistribute it and/or modify it under the same terms
295       as the DBIx::Class library.
296
297
298
299perl v5.30.1                      2020-01D-B2I9x::Class::Optional::Dependencies(3)
Impressum