5
use SVN::Base qw(Wc svn_wc_);
9
SVN::Wc - Subversion working copy functions
21
=head2 svn_wc_status_t
25
=item $wcstat-E<gt>entry()
27
A svn_wc_entry_t object for the item. Can be undef if not under version
30
=item $wcstat-E<gt>text_status()
32
An integer representing the status of the item's text. Can be one of the
33
$SVN::Wc::Status::* constants.
35
=item $wcstat-E<gt>prop_status()
37
An integer representing the status of the item's properties. Can be one of the
38
$SVN::Wc::Status::* constants.
40
=item $wcstat-E<gt>locked()
42
A boolean telling if the item is locked. A directory can be locked if a
43
working copy update was interrupted.
45
=item $wcstat-E<gt>copied()
47
A boolean telling if the item was copied. A file or directory can be copied if
48
it's scheduled for addition-with-history (or part of a subtree that is
51
=item $wcstat-E<gt>switched()
53
A boolean telling if the item was switched. A file or directory can be
54
switched if the switch command has been used.
56
=item $wcstat-E<gt>repos_text_status()
58
An integer representing the status of the item's text in the repository. Can
59
be one of the $SVN::Wc::Status::* constants.
62
=item $wcstat-E<gt>repos_prop_status()
64
An integer representing the status of the item's properties in the repository.
65
Can be one of the $SVN::Wc::Status::* constants.
71
package _p_svn_wc_status_t;
72
use SVN::Base qw(Wc svn_wc_status_t_);
78
=item $wcent-E<gt>name()
82
=item $wcent-E<gt>revision()
86
=item $wcent-E<gt>url()
90
=item $wcent-E<gt>repos()
92
Canonical repository URL.
94
=item $wcent-E<gt>uuid()
98
=item $wcent-E<gt>kind()
100
The kind of node. One of the following constants:
101
$SVN::Node::none, $SVN::Node::file,
102
$SVN::Node::dir, $SVN::Node::unknown.
104
=item $wcent-E<gt>schedule()
106
Scheduling. One of the SVN::Wc::Schedule::* constants.
108
=item $wcent-E<gt>copied()
112
=item $wcent-E<gt>deleted()
114
Deleted, but parent rev lags behind.
116
=item $wcent-E<gt>absent()
118
Absent -- we know an entry of this name exists, but that's all (usually this
119
happens because of authz restrictions)
121
=item $wcent-E<gt>incomplete()
123
For THIS_DIR entry, implies whole entries file is incomplete.
125
=item $wcent-E<gt>copyfrom_url()
129
=item $wcent-E<gt>copyfrom_rev()
133
=item $wcent-E<gt>conflict_old()
135
Old version of conflicted file.
137
=item $wcent-E<gt>conflict_new()
139
New version of conflicted file.
141
=item $wcent-E<gt>conflict_wrk()
143
Working version of conflicted file.
145
=item $wcent-E<gt>prejfile()
147
Property reject file.
149
=item $wcent-E<gt>text_time()
151
Last up-to-date time for text contents (0 means no information available).
153
=item $wcent-E<gt>prop_time()
155
Last up-to-date time for properties (0 means no information available).
157
=item $wcent-E<gt>checksum()
159
Base-64 encoded checksum for the untranslated text base file, can be undef for
160
backwards compatibility.
162
=item $wcent-E<gt>cmt_rev()
164
Last revision this was changed.
166
=item $wcent-E<gt>cmt_date()
168
Last date this was changed.
170
=item $wcent-E<gt>cmt_author()
172
Last commit author of this item.
178
package _p_svn_wc_entry_t;
179
# still need to check if the function prototype allows it to be called
181
use SVN::Base qw(Wc svn_wc_entry_t_);
185
=head2 SVN::Wc::Notify::Action
189
=item $SVN::Wc::Notify::Action::add
191
Adding a path to revision control.
193
=item $SVN::Wc::Notify::Action::copy
195
Copying a versioned path.
197
=item $SVN::Wc::Notify::Action::delete
199
Deleting a versioned path.
201
=item $SVN::Wc::Notify::Action::restore
203
Restoring a missing path from the pristine text-base.
205
=item $SVN::Wc::Notify::Action::revert
207
Reverting a modified path.
209
=item $SVN::Wc::Notify::Action::failed_revert
211
A revert operation has failed.
213
=item $SVN::Wc::Notify::Action::resolved
215
Resolving a conflict.
217
=item $SVN::Wc::Notify::Action::skip
221
=item $SVN::Wc::Notify::Action::update_delete
223
Got a delete in an update.
225
=item $SVN::Wc::Notify::Action::update_add
227
Got an add in an update.
229
=item $SVN::Wc::Notify::Action::update_update
231
Got any other action in an update.
233
=item $SVN::Wc::Notify::Action::update_completed
235
The last notification in an update (including updates of externals).
237
=item $SVN::Wc::Notify::Action::update_external
239
Updating an external module.
241
=item $SVN::Wc::Notify::Action::status_completed
243
The last notification in a status (including status on externals).
245
=item $SVN::Wc::Notify::Action::status_external
247
Running status on an external module.
249
=item $SVN::Wc::Notify::Action::commit_modified
251
Committing a modification.
253
=item $SVN::Wc::Notify::Action::commit_added
255
Committing an addition.
257
=item $SVN::Wc::Notify::Action::commit_deleted
259
Committing a deletion.
261
=item $SVN::Wc::Notify::Action::commit_replaced
263
Committing a replacement.
265
=item $SVN::Wc::Notify::Action::commit_postfix_txdelta
267
Transmitting post-fix text-delta data for a file.
269
=item $SVN::Wc::Notify::Action::blame_revision
271
Processed a single revision's blame.
277
# no reasonable prefix for these enums
278
# so we have to do them one by one to import.
279
package SVN::Wc::Notify::Action;
280
our $add = $SVN::Wc::notify_add;
281
our $copy = $SVN::Wc::notify_copy;
282
our $delete = $SVN::Wc::notify_delete;
283
our $restore = $SVN::Wc::notify_restore;
284
our $revert = $SVN::Wc::notify_revert;
285
our $failed_revert = $SVN::Wc::notify_failed_revert;
286
our $resolved = $SVN::Wc::notify_resolved;
287
our $skip = $SVN::Wc::notify_skip;
288
our $update_delete = $SVN::Wc::notify_update_delete;
289
our $update_add = $SVN::Wc::notify_update_add;
290
our $update_update = $SVN::Wc::notify_update_update;
291
our $update_completed = $SVN::Wc::notify_update_completed;
292
our $update_external = $SVN::Wc::notify_update_external;
293
our $status_completed = $SVN::Wc::notify_status_completed;
294
our $status_external = $SVN::Wc::notify_status_external;
295
our $commit_modified = $SVN::Wc::notify_commit_modified;
296
our $commit_added = $SVN::Wc::notify_commit_added;
297
our $commit_deleted = $SVN::Wc::notify_commit_deleted;
298
our $commit_replaced = $SVN::Wc::notify_commit_replaced;
299
our $commit_postfix_txdelta = $SVN::Wc::notify_commit_postfix_txdelta;
300
our $blame_revision = $SVN::Wc::notify_blame_revision;
302
=head2 SVN::Wc::Notify::State
306
=item $SVN::Wc::Notify::State::unknown
308
Notifier doesn't know or isn't saying.
310
=item $SVN::Wc::Notify::State::unchanged
312
The state did not change.
314
=item $SVN::Wc::Notify::State::missing
316
The item wasn't present.
318
=item $SVN::Wc::Notify::State::obstructed
320
An unversioned item obstructed work.
322
=item $SVN::Wc::Notify::State::changed
324
Pristine state was modified.
326
=item $SVN::Wc::Notify::State::merged
328
Modified state had mods merged in.
330
=item $SVN::Wc::Notify::State::conflicted
332
Modified state got conflicting mods.
338
package SVN::Wc::Notify::State;
339
use SVN::Base qw(Wc svn_wc_notify_state_);
341
=head2 SVN::Wc::Schedule
345
=item $SVN::Wc::Schedule::normal
347
Nothing special here.
349
=item $SVN::Wc::Schedule::add
353
=item $SVN::Wc::Schedule::delete
357
=item $SVN::Wc::Schedule::replace
359
Slated for replacement (delete + add)
365
package SVN::Wc::Schedule;
366
use SVN::Base qw(Wc svn_wc_schedule_);
368
=head2 SVN::Wc::Status
372
=item $SVN::Wc::Status::none
376
=item $SVN::Wc::Status::unversioned
378
Is not a versioned node in this working copy.
380
=item $SVN::Wc::Status::normal
382
Exists, but uninteresting.
384
=item $SVN::Wc::Status::added
386
Is scheduled for addition.
388
=item $SVN::Wc::Status::missing
390
Under version control but missing.
392
=item $SVN::Wc::Status::deleted
394
Scheduled for deletion.
396
=item $SVN::Wc::Status::replaced
398
Was deleted and then re-added.
400
=item $SVN::Wc::Status::modified
402
Text or props have been modified.
404
=item $SVN::Wc::Status::merged
406
Local mods received repos mods.
408
=item $SVN::Wc::Status::conflicted
410
Local mods received conflicting mods.
412
=item $SVN::Wc::Status::ignored
414
A node marked as ignored.
416
=item $SVN::Wc::Status::obstructed
418
An unversioned resource is in the way of the versioned resource.
420
=item $SVN::Wc::Status::external
422
An unversioned path populated by an svn:external property.
424
=item $SVN::Wc::Status::incomplete
426
A directory doesn't contain a complete entries list.
432
package SVN::Wc::Status;
433
use SVN::Base qw(Wc svn_wc_status_);