SVN::Simple::Edit(3)

πŸ“¦
version 0.28 Β· 3 versions
, in fedora 43

πŸ’– SVN::Simple::Edit πŸ’–

okay bestie, gather round, because we're talking about SVN::Simple::Edit β€” the User Contributed Perl Documentation page that's basically a little glow-up for svn delta editors. she's a wrapper, she's friendly, she's giving "perl interface but make it cute" energy. let's go πŸ¦‹


✨ NAME ✨

SVN::Simple::Edit β€” a simple interface for driving svn delta editors. periodt. πŸ’…


✨ SYNOPSIS ✨

no cap, here's the whole vibe in one code block:

my $edit = SVN::Simple::Edit->new
   (_editor => [SVN::Repos::get_commit_editor($repos, "file://$repospath",
                                     '/', 'root', 'FOO', \&committed)],
   );

$edit->open_root($fs->youngest_rev);
$edit->add_directory ('trunk');
$edit->add_file ('trunk/filea');
$edit->modify_file ("trunk/fileb", "content", $checksum);
$edit->delete_entry ("trunk/filec");
$edit->close_edit ();
...
$edit->copy_directory ('branches/a, trunk, 0);

see how she just does stuff? iconic. πŸ‘‘


✨ DESCRIPTION ✨

so SVN::Simple::Edit wraps the subversion delta editor in a perl-friendly interface, and then you can lowkey just... drive it? to describe changes to a tree. the most common usage is wrapping the commit editor, so you can make commits to a subversion repository easily. slay. πŸ’–

this also means you can not supply the $edit object as a delta_editor to other API β€” and that's literally why this module is named ::Edit instead of ::Editor. iykyk. 🫢

see SVN::Simple::Editor for a simple interface implementing a delta editor.


✨ PARAMETERS ✨

for constructor πŸŽ€

  • _editor β€” the editor that will receive delta editor calls. she's the one receiving the messages, basically the main character.
  • missing_handler β€” called when parent directories are not opened yet. can be one of these three:
    • \&SVN::Simple::Edit::build_missing β€” always build parents if you don't open them explicitly.
    • \&SVN::Simple::Edit::open_missing β€” always open the parents if you don't create them explicitly.
    • SVN::Simple::Edit::check_missing ([$root]) β€” check if the path exists on $root. open it if so, otherwise create it. ✨
  • root β€” the default root to use by SVN::Simple::Edit::check_missing.
  • base_path β€” the base path the edit object is created to send delta editor calls.
  • noclose β€” do not close files or directories. this might make non-sorted operations on directories/files work. 🌈

✨ METHODS ✨

⚠️ note, bestie: don't expect all editors will work with operations not sorted in DFS order. fr fr.
  • open_root ($base_rev)
  • add_directory ($path)
  • open_directory ($path)
  • copy_directory ($path, $from, $fromrev)
  • add_file ($path)
  • open_file ($path)
  • copy_file ($path, $from, $fromrev)
  • delete_entry ($path)
  • change_dir_prop ($path, $propname, $propvalue)
  • change_file_prop ($path, $propname, $propvalue)
  • close_edit ()

✨ AUTHORS ✨

Chia-liang Kao <clkao@clkao.org> 🫢


Copyright 2003-2004 by Chia-liang Kao <clkao@clkao.org>.

this program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. πŸ’œ

See <http://www.perl.com/perl/misc/Artistic.html>


and that's the whole page, bestie!! πŸŽ€ this was perl v5.42.0, dated 2025-07-25, and it's the SVN::Simple::Edit(3) manual β€” go forth and commit something iconic βœ¨πŸŒΈπŸ’…

πŸ“¦ where this page comes from