git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/4] Git.pm: config_boolean() -> config_bool()

From
Petr Baudis <pasky@suse.cz>
Date
Apr 27, 2007, 02:06 UTC
Message-ID
<20070427020601.22991.13792.stgit@rover>

This patch renames config_boolean() to config_bool() for consistency with the commandline interface and because it is shorter but still obvious. ;-) It also changes the return value from some obscure string to real Perl boolean, allowing for clean user code.

Signed-off-by: Petr Baudis <pasky@suse.cz>
---
 git-remote.perl |    4 ++--
 perl/Git.pm     |   12 ++++++++----
 2 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/git-remote.perl b/git-remote.perl
index 52013fe..5763799 100755
--- a/git-remote.perl
+++ b/git-remote.perl
@@ -297,9 +297,9 @@ sub update_remote {
 	} elsif ($name eq 'default') {
 		undef @remotes;
 		for (sort keys %$remote) {
-			my $do_fetch = $git->config_boolean("remote." . $_ .
+			my $do_fetch = $git->config_bool("remote." . $_ .
 						    ".skipDefaultUpdate");
-			if (!defined($do_fetch) || $do_fetch ne "true") {
+			unless ($do_fetch) {
 				push @remotes, $_;
 			}
 		}
diff --git a/perl/Git.pm b/perl/Git.pm
index b5b1cf5..50c2993 100644
--- a/perl/Git.pm
+++ b/perl/Git.pm
@@ -516,9 +516,11 @@ sub config {
 }
 
 
-=item config_boolean ( VARIABLE )
+=item config_bool ( VARIABLE )
 
-Retrieve the boolean configuration C<VARIABLE>.
+Retrieve the bool configuration C<VARIABLE>. The return value
+is usable as a boolean in perl (and C<undef> if it's not defined,
+of course).
 
 Must be called on a repository instance.
 
@@ -526,14 +528,16 @@ This currently wraps command('config') s
 
 =cut
 
-sub config_boolean {
+sub config_bool {
 	my ($self, $var) = @_;
 	$self->repo_path()
 		or throw Error::Simple("not a repository");
 
 	try {
-		return $self->command_oneline('config', '--bool', '--get',
+		my $var = $self->command_oneline('config', '--bool', '--get',
 					      $var);
+		return undef unless defined $var;
+		return $var eq 'true';
 	} catch Git::Error::Command with {
 		my $E = shift;
 		if ($E->value() == 1) {
Next: Petr Baudis
Message 1 of 13 in “Git.pm: config_boolean() -> config_bool()”
  1. 1/4 Git.pm: config_boolean() -> config_bool()Petr Baudis, Apr 27, 2007
  2. 2/4 Git.pm: Add remote_refs() git-ls-remote frontendPetr Baudis, Apr 27, 2007
  3. 3/4 [PATCH] git-mirror - exactly mirror another repositoryPetr Baudis, Apr 27, 2007
  4. Shawn O. PearceApr 27, 2007
  5. 4/4 server info: Add HEAD to info/refsPetr Baudis, Apr 27, 2007
  6. Junio C HamanoApr 27, 2007
  7. Petr BaudisApr 27, 2007
  8. Junio C HamanoApr 27, 2007
  9. Junio C HamanoApr 28, 2007
  10. Git.pm: config_boolean() -> config_bool()Petr Baudis, May 9, 2007
  11. Petr BaudisMay 9, 2007
  12. Junio C HamanoMay 10, 2007
  13. Junio C HamanoMay 9, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.