Next problem should be easy to fix. Looks like there is some authentication
needed here:
{
"transcript": [
"$ svn checkout --depth empty --non-interactive --no-auth-cache
https://svn.apache.org/repos/private/foundation
/var/folders/mx/t44d3_bs437dpnywzk_mwl_0002msd/T/d20200606-97419-zmn43o",
"svn: E170013: Unable to connect to a repository at URL
'https://svn.apache.org/repos/private/foundation'",
"svn: E215004: No more credentials or we tried too many times.",
"Authentication failed",
"",
"$ svn update --non-interactive --no-auth-cache
/var/folders/mx/t44d3_bs437dpnywzk_mwl_0002msd/T/d20200606-97419-zmn43o/members.txt",
"Skipped
'/var/folders/mx/t44d3_bs437dpnywzk_mwl_0002msd/T/d20200606-97419-zmn43o/members.txt'",
"svn: E155007: None of the targets are working copies"
],
"exception": "#<Errno::ENOENT: No such file or directory @ rb_sysopen -
/var/folders/mx/t44d3_bs437dpnywzk_mwl_0002msd/T/d20200606-97419-zmn43o/members.txt>",
"backtrace": [
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/svn.rb:627:in `read'",
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/svn.rb:627:in `multiUpdate'",
"/Users/clr/apache/git/whimsy/www/roster/views/actions/memstat.json.rb:28:in
`_evaluate'",
"/Users/clr/apache/git/whimsy/www/roster/main.rb:204:in `block in <top
(required)>'",
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:223:in `call'",
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:48:in `call'",
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:200:in `call'",
"/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:254:in `call'"
]
}
Craig
> On Jun 6, 2020, at 5:07 PM, Craig Russell <[email protected]> wrote:
>
> FYI: The line 22 that finally worked:
> # update members.txt only for secretary actions
> ASF::SVN.multiUpdate members_txt, message, env, _ do |text|
>
> I don't know why having the () around the arguments is a problem, but it is.
> Could this be a bug in the "ruby compiler"?
>
> Craig
>
>> On Jun 6, 2020, at 1:41 PM, Craig Russell <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> I tried this:
>> line 22:
>> ASF::SVN.multiUpdate (members_txt, message, env, _) do |text|
>> # default command is empty
>> command = ""
>> # remove user's entry
>> unless text.sub! entry, '' # e.g. if the workspace was out of date
>> raise Exception.new("Failed to remove existing entry -- try refreshing")
>> end
>>
>> # determine where to put the entry
>> if @action == 'emeritus'
>> index = text.index(/^\s\*\)\s/, text.index(/^Emeritus/))
>> entry.sub! %r{\s*/\* deceased, .+?\*/},'' # drop the deceased comment if
>> necessary
>> # if pending emeritus request was found, move it to emeritus
>> extra = []
>> if @emeritusfilename.index('/emeritus-requests-received/')
>> emeritus_url = ASF::SVN.svnurl('emeritus')
>> command = "svn mv #{@emeritusfilename} #{emeritus_url}"
>> Wunderbar.warn "memstat.json.rb action emeritus commmand: #{command}"
>> extra << ['mv', @emeritusfilename, emeritus_url]
>> end
>> elsif @action == 'active'
>> index = text.index(/^\s\*\)\s/, text.index(/^Active/))
>> entry.sub! %r{\s*/\* deceased, .+?\*/},'' # drop the deceased comment if
>> necessary
>> # if emeritus file was found, move it to emeritus-reinstated
>> if @emeritusfilename.index('/emeritus/')
>> emeritus_reinstated_url = ASF::SVN.svnurl('emeritus-reinstated')
>> command = "svn mv #{@emeritusfilename} #{emeritus_reinstated_url}"
>> Wunderbar.warn "memstat.json.rb action emeritus commmand: #{command}"
>> end
>> elsif @action == 'deceased'
>> index = text.index(/^\s\*\)\s/, text.index(/^Deceased/))
>> entry.sub! %r{\n}, " /* deceased, #{@dod} */\n" # add the deceased
>> comment
>> # else
>> # raise Exception.new("invalid action #{action.inspect}")
>> end
>>
>> # perform the insertion
>> text.insert index, entry
>>
>> # save the updated text
>> ASF::Member.text = text
>>
>> # return the updated (and normalized) text and extra svn command
>> [ASF::Member.text, extra]
>> end if updmem #only update members.txt for secretary actions
>> The above is line 66
>>
>> I got this:
>> {
>> "exception": "#<SyntaxError:
>> /Users/clr/apache/git/whimsy/www/roster/views/actions/memstat.json.rb:22:
>> syntax error, unexpected ')', expecting '='\n
>> ... (members_txt, message, env, _) do |text|\n...
>> ^\n/
>> Users/clr/apache/git/whimsy/www/roster/views/actions/memstat.json.rb:66:
>> syntax error, unexpected `end', expecting end-of-input\n
>> end if updmem #only update membe...\n^~~\n>",
>> "backtrace": [
>> "/Users/clr/apache/git/whimsy/www/roster/main.rb:204:in `block in <top
>> (required)>'",
>> "/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:223:in `call'",
>> "/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:48:in `call'",
>> "/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:200:in `call'",
>> "/Users/clr/apache/git/whimsy/lib/whimsy/asf/rack.rb:254:in `call'"
>> ]
>> }
>>
>>> On Jun 6, 2020, at 9:04 AM, sebb <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>
>>> The full method name is
>>>
>>> ASF::SVN.multiUpdate
>>>
>>> There's an example call here:
>>>
>>> https://lists.apache.org/thread.html/r97d0fc64bf633e643889cba21e18b5bb60c7d068430c36c447119887%40%3Cdev.whimsical.apache.org%3E
>>>
>>> <https://lists.apache.org/thread.html/r97d0fc64bf633e643889cba21e18b5bb60c7d068430c36c447119887%40%3Cdev.whimsical.apache.org%3E>
>>>
>>> On Sat, 6 Jun 2020 at 15:47, Craig Russell <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>>
>>>> Is there an example of the use of this method? I cannot seem to call it
>>>> from the memstat.json.rb code.
>>>>
>>>> Thanks,
>>>> Craig
>>>>
>>>>
>>>>> On Jun 6, 2020, at 7:18 AM, [email protected] <mailto:[email protected]>
>>>>> wrote:
>>>>>
>>>>> This is an automated email from the ASF dual-hosted git repository.
>>>>>
>>>>> sebb pushed a commit to branch master
>>>>> in repository https://gitbox.apache.org/repos/asf/whimsy.git
>>>>> <https://gitbox.apache.org/repos/asf/whimsy.git>
>>>>>
>>>>>
>>>>> The following commit(s) were added to refs/heads/master by this push:
>>>>> new de90463 Add dryrun to multiUpdate
>>>>> de90463 is described below
>>>>>
>>>>> commit de904636aedc54e7707d8e2b1858a6930058d737
>>>>> Author: Sebb <[email protected] <mailto:[email protected]>>
>>>>> AuthorDate: Sat Jun 6 15:18:19 2020 +0100
>>>>>
>>>>> Add dryrun to multiUpdate
>>>>> ---
>>>>> lib/whimsy/asf/svn.rb | 8 ++++++--
>>>>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/lib/whimsy/asf/svn.rb b/lib/whimsy/asf/svn.rb
>>>>> index 6f1d722..9af5dbb 100644
>>>>> --- a/lib/whimsy/asf/svn.rb
>>>>> +++ b/lib/whimsy/asf/svn.rb
>>>>> @@ -578,7 +578,7 @@ module ASF
>>>>> # extra << ['rm',url3]
>>>>> # [out, extra]
>>>>> # end
>>>>> - def self.multiUpdate(path, msg, env, _)
>>>>> + def self.multiUpdate(path, msg, env, _, options = {})
>>>>> require 'tempfile'
>>>>> tmpdir = Dir.mktmpdir.untaint
>>>>> if File.file? path
>>>>> @@ -638,7 +638,11 @@ module ASF
>>>>> end
>>>>>
>>>>> # Now commit everything
>>>>> - ASF::SVN.svnmucc(cmds,msg,env,_,filerev,tmpdir)
>>>>> + if options[:dryrun]
>>>>> + puts cmds # TODO: not sure this is correct for Wunderbar
>>>>> + else
>>>>> + ASF::SVN.svnmucc(cmds,msg,env,_,filerev,tmpdir)
>>>>> + end
>>>>> ensure
>>>>> FileUtils.rm_rf tmpdir
>>>>> end
>>>>>
>>>>
>>>> Craig L Russell
>>>> [email protected] <mailto:[email protected]>
>>>>
>>
>> Craig L Russell
>> [email protected] <mailto:[email protected]>
>>
>
> Craig L Russell
> [email protected] <mailto:[email protected]>
>
Craig L Russell
[email protected]