diff options
author | Eric Wong <e@80x24.org> | 2021-04-16 16:10:29 -0700 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2021-04-16 22:24:47 -0400 |
commit | 17244996655fcbc47fb54c915360657367366c46 (patch) | |
tree | 4741bdf4b2aa5272dc248eaf1a7713b3b562a823 /lib | |
parent | bc7f9e3322a36b7aa42b273fd82d1c1da7b69b00 (diff) | |
download | public-inbox-17244996655fcbc47fb54c915360657367366c46.tar.gz |
We want users to be able to edit and refine the query over time while using the same output destination.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/PublicInbox/LeiSavedSearch.pm | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/lib/PublicInbox/LeiSavedSearch.pm b/lib/PublicInbox/LeiSavedSearch.pm index fe8301d6..ebc63091 100644 --- a/lib/PublicInbox/LeiSavedSearch.pm +++ b/lib/PublicInbox/LeiSavedSearch.pm @@ -10,9 +10,8 @@ use PublicInbox::OverIdx; use PublicInbox::LeiSearch; use PublicInbox::Config; use PublicInbox::Spawn qw(run_die); -use PublicInbox::ContentHash qw(content_hash git_sha); -use PublicInbox::Eml; -use PublicInbox::Hval qw(to_filename); +use PublicInbox::ContentHash qw(git_sha); +use Digest::SHA qw(sha256_hex); sub new { my ($cls, $lei, $dir) = @_; @@ -24,11 +23,11 @@ sub new { $self->{-cfg} = PublicInbox::Config::git_config_dump($f); } else { # new saved search "lei q --save" my $saved_dir = $lei->share_path . '/saved-searches/'; - my (@name) = ($lei->{ovv}->{dst} =~ m{([\w\-\.]+)/*\z}); + my (@n) = ($lei->{ovv}->{dst} =~ m{([\w\-\.]+)/*\z}); my $q = $lei->{mset_opt}->{q_raw} // die 'BUG: {q_raw} missing'; - my $q_raw_str = ref($q) ? "@$q" : $q; - push @name, to_filename($q_raw_str); - $dir = $saved_dir . join('-', @name); + push @n, sha256_hex("$lei->{ovv}->{fmt}\0$lei->{ovv}->{dst}"); + + $dir = $saved_dir . join('-', @n); require File::Path; File::Path::make_path($dir); # raises on error $self->{'-f'} = "$dir/lei.saved-search"; |