On 13 January 2016 at 17:16, Sam Ruby <ru...@intertwingly.net> wrote: > On Wed, Jan 13, 2016 at 11:12 AM, sebb <seb...@gmail.com> wrote: >> On 13 January 2016 at 13:09, Sam Ruby <ru...@intertwingly.net> wrote: >>> On Wed, Jan 13, 2016 at 7:29 AM, sebb <seb...@gmail.com> wrote: >>>> On 13 January 2016 at 11:53, Sam Ruby <ru...@intertwingly.net> wrote: >>>>> On Wed, Jan 13, 2016 at 6:13 AM, sebb <seb...@gmail.com> wrote: >>>>>> There does not seem to be much (if any) advantage of using a Gem to >>>>>> hold the common Whimsy code. >>>>>> >>>>>> There are some disadvantages: >>>>>> - testing changes to the library code is harder >>>>>> - Gem has to be generated, uploaded and deployed >>>>>> - having the Gem as well as the source code on the same system is >>>>>> confusing as they may differ >>>>>> >>>>>> I think it would be much simpler to reference the library code using a >>>>>> relative RUBYLIB definition. >>>>>> >>>>>> This will mean some changes in order to provide version tags, but >>>>>> those need to be done anyway as the code currently assumes SVN is >>>>>> being used. >>>>> >>>>> Gems can be locally installed, and Gemfiles can be used to locate >>>>> them. The following change should allow you to do what you want: >>>>> >>>>> https://github.com/apache/whimsy/commit/7d09b579bf02a186a739ad72ce8096640388dec8 >>>>> >>>>> Should it work out, all that would need to be done is to add "require >>>>> 'bundler/setup'" to the main executables. >>>>> >>>>> I don't know if this completely addresses the problem, but it is a >>>>> reasonable first step in that it allows code to be migrated one >>>>> application at a time. >>>> >>>> Still seems unnecessarily complicated, and there are then potentially >>>> 3 different versions of the library code: >>>> - lib/whimsy >>>> - local Gem >>>> - system Gem >>>> >>>> Defining RUBYLIB works for me locally, and can be done in a login script. >>> >>> Did you give it a try? Assuming you have ~/.whimsy set up, and have >>> installed the bundler gem, the following should "just work" with no >>> RUBYLIB, no login script: >>> >>> $ git clone https://github.com/apache/whimsy.git >>> $ ruby whimsy/www/roster/public_committee_info.rb >> >> Fails with: >> >> $ ruby whimsy/www/roster/public_committee_info.rb >> /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in >> `require': cannot load such file -- whimsy/asf (LoadError) >> from >> /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in >> `require' >> from whimsy/www/roster/public_committee_info.rb:4:in `<main>' >> >> Turns out it works if I do: >> >> $ cd whimsy >> $ ruby www/roster/public_committee_info.rb > > OK, that's kinda weird. I've reproduced this, and verified that you > can run from the whimsy, whimsy/www, and whimsy/roster directories. > And that when you do so, you will pick up your local copy of lib > directory. While weird, it doesn't seem unreasonable to expect you to > be in the directory structure of the application you are trying to > test.
Agreed. >>> In any case, the change is live and >>> https://whimsy-test.apache.org/public/committee-info.json was updated, >> >> However AFAICT it still contains the bug. >> Or maybe you meant that only the Gem change is now live, not the parsing bug? > > public_committee_info.rb, as deployed, should no longer be dependent > on the whimsy-asf gem. Instead, it should make use of the code as it > currently exists in the whimsy/lib directory. As a committer, you > should be able to make a change, test it locally, push it out to > GitHub, and have it deployed automatically for you. > > I realize that you are focused on getting this bug fixed. I appreciate that. > > Please recognize that I am focused on NOT BEING THE ONLY PERSON WHO > CAN DO ALL THE WORK. Understood. > What, if anything, is holding you up from developing a change, testing > it locally on your machine, pushing your change to GitHub, and having > it deploy automatically on whimsy-test.apache.org? > > If you do that, I would very much appreciate it. At that point, I'll > manually copy the change over to whimsy.apache.org as it is not worth > it to set up auto-deployment there as it is going away. And once it > does go away, you should be able to develop and deploy changes without > my assistance. > >>> Daniel has indicated that MATT is operational. At this point, you >>> should be good to go. And if you have changes you want to make to >>> further move away from having a gem, feel free to make them. > > Daniel tells me that you are not set up yet. Is there a problem? Matt is stalled on the 3rd phase: MFA: Unknown, not part of the Apache organisation on GitHub yet. I have set up Github and 2FA using Google Authenticator on my phone, and can login and out of Github (and reset the password). But no joy, cannot get past stage 2. I have tried restarting the matt process, and just now revoked the permission and re-enabled it, but still no joy. If there's something else I'm supposed to do it's not obvious what that is (unlike the previous stages, which were easy to follow). > - Sam Ruby