Hi,

Allura can be pretty flexible, but in general we follow these conventions:

Core components that are deeply integrated into allura go in the
Allura/allura/model & controllers directories.

Non-essential components go in the Allura/allura/ext/ directory.  Like "extra"
or "extensions".  So this would make sense for the personal dashboard I think.

Standalone components that can be their application go in ForgeBlog, ForgeChat,
etc. as separate python packages.

-Dave

On 5/14/18 9:44 AM, Deshani Geethika wrote:
> Hi Dave,
> 
> During last few days I was working on my GSoC project and I have few
> problems to be clarified.
> 
> In my proposal
> <https://docs.google.com/document/d/1clWKSJ8-ektpVaEgiJyoM34ievwkyCnD4uORMCT0eM8/edit?usp=sharing>
> I have mentioned that, personal_dashboard folder should be created on the
> path Allura/allura/ext/personal_dashboard. But, I have a confusion whether
> this path is correct, since the Personal Dashboard is not an application.
> 
> Therefore, I have followed the neighborhood implementation and found out
> that its templates are in the path Allura/allura/templates. Also, its
> implementation (neighborhood.py) is in the path
> Allura/allura/model/neighborhood.py.
> 
> From above two paths, what is the correct convention that I should follow?
> 
> Regards!
> 
> On Thu, May 3, 2018 at 3:21 AM, Dave Brondsema <d...@brondsema.net> wrote:
> 
>> On 5/2/18 11:24 AM, Deshani Geethika wrote:
>>> Hi Dave,
>>>
>>> Thanks for the information. I have few questions to be clarified.
>>>
>>> I think replacing spaces with underscores would be a good way to do it,
>>> since on many wikis they are
>>> interchangable.  (They aren't for allura, but we could move towards
>> that).
>>>
>>> Here do you mean that spaces and underscores in a title are considered as
>>> same characters?
>>>
>>> For example : "The Title" is considered same as "The_Title".
>>
>> Yes that's what I was thinking.
>>
>>>
>>> In this situation, users should not be allowed to create 2 wikis with
>> above
>>> titles, because we can't handle inbound emails for both scenarios.
>>
>> Good point, I hadn't thought of that.  That does make this more
>> complicated.
>> Maybe it could be a followup step to prevent creating a page that
>> conflicts with
>> another one.  And then even later on we could make URLs handle spaces and
>> underscores interchangably.
>>
>> Anyone else have ideas about what would be best?
>>
>>>
>>> Also, we have another problem here.
>>>
>>> Then this handle_message method could try finding a page for that
>> message,
>>> and if it
>>> doesn't exist, it can convert any underscores back to spaces and then try
>>> find
>>> the wiki page under that name.
>>>
>>> Here do I need to check for all the possible number of combinations of
>>> underscores and spaces to find out the exact wiki page?
>>
>>
>> I was thinking if an email comes in for "Foo_Bar_Baz" first look for one
>> titled
>> "Foo_Bar_Baz" and then one titled "Foo Bar Baz".  Trying every combination
>> could
>> get crazy.
>>
>>>
>>> Regards!
>>>
>>>
>>>
>>> On Wed, May 2, 2018 at 7:17 AM, Dave Brondsema <d...@brondsema.net>
>> wrote:
>>>
>>>> Cool.  That email_address property should be the main one and changing
>> it
>>>> should
>>>> reflect in the outgoing emails that are sent to subscribers after
>>>> commenting or
>>>> editing a wiki page.
>>>>
>>>> Allura also supports *inbound* emails on most artifacts including wiki
>>>> pages.
>>>> So someone could reply to the wiki email and it would be received by
>>>> Allura and
>>>> added as a comment on the wiki page.  The
>>>> forgewiki.wiki_main.ForgeWikiApp#handle_message method is what is
>>>> responsible
>>>> for that.  So that code should be updated as well.  I think replacing
>>>> spaces
>>>> with underscores would be a good way to do it, since on many wikis they
>> are
>>>> interchangable.  (They aren't for allura, but we could move towards
>>>> that).  Then
>>>> this handle_message method could try finding a page for that message,
>> and
>>>> if it
>>>> doesn't exist, it can convert any underscores back to spaces and then
>> try
>>>> find
>>>> the wiki page under that name.
>>>>
>>>> To test the inbound mails, I'm unfortunately not seeing any tests in the
>>>> code.
>>>> You could add some.  The ForgeWiki/forgewiki/tests/test_app.py file
>> has a
>>>> TestBulkExport class and you could copy most of its setup, and then add
>> a
>>>> test_email test case that calls wiki.handle_message.
>>>>
>>>> The other way is to use telnet or other tools like that to send the mail
>>>> into
>>>> the "inmail" docker compose container, or `paster smtp_server` service
>> if
>>>> you
>>>> aren't using docker.  There's an example of doing that in the middle of
>>>> this
>>>> page: https://forge-allura.apache.org/p/allura/wiki/Notes/
>>>>
>>>> Hope that helps!  It sounds a little more complex of a ticket than I
>>>> initially
>>>> thought it would be.  Let us know if you have any more questions or get
>>>> stuck on
>>>> anything.
>>>>
>>>> -Dave
>>>>
>>>> On 5/1/18 12:45 PM, Deshani Geethika wrote:
>>>>> Hi all,
>>>>>
>>>>> During last few days, I spent time on reading the Allura documentation
>>>> and
>>>>> on getting familiarized with Allura codebase.
>>>>>
>>>>> Then, I have started to work on the ticket - #1699 Fix incoming email
>> for
>>>>> wiki pages with space in the title
>>>>> <https://forge-allura.apache.org/p/allura/tickets/1699/>. According to
>>>> my
>>>>> understanding, it is required to replace the spaces in the title with
>>>> null
>>>>> string (or with some character). Therefore, the getter method for
>>>>> email_address which is in Page.class in ForgeWiki/forgewiki/model/wiki
>>>> .py
>>>>> should be changed as below.
>>>>>
>>>>>
>>>>> @property
>>>>> def email_address(self):
>>>>>        if context.app.config.options.get('AllowEmailPosting', True):
>>>>>                domain = self.email_domain
>>>>>     * self.title.replace(‘ ‘,’’) // Added line*
>>>>>                return '%s@%s%s' % (self.title.replace('/', '.'),
>> domain,
>>>>> config.common_suffix)
>>>>>        else:
>>>>>                return tg_config.get('forgemail.return_path')
>>>>>
>>>>> Could you tell me whether, do I need to modify any method other than
>> the
>>>>> above one?
>>>>>
>>>>>
>>>>> Regards!
>>>>>
>>>>> On Wed, Apr 25, 2018 at 10:30 PM, Deshani Geethika <
>>>>> deshanigeeth...@gmail.com> wrote:
>>>>>
>>>>>> Hi Dave,
>>>>>>
>>>>>> Thanks for the detailed explanation. I will start working on this and
>>>> come
>>>>>> back to you with my progress
>>>>>>
>>>>>> Regards!
>>>>>>
>>>>>> On Wed, Apr 25, 2018 at 9:55 PM, Dave Brondsema <d...@brondsema.net>
>>>>>> wrote:
>>>>>>
>>>>>>> On 4/24/18 11:14 AM, Deshani Geethika wrote:
>>>>>>>> Hi Dave,
>>>>>>>>
>>>>>>>> As per GSoC official time-line, from 23rd April to 14th May period
>> is
>>>>>>>> considered as "Community Bonding Period".
>>>>>>>>
>>>>>>>> During this period I would like to finalize my design and separate
>> my
>>>>>>>> project into several tickets. Also, I would like to get more
>>>>>>> familiarized
>>>>>>>> with Allura code-base and Allura team.
>>>>>>>>
>>>>>>>> Could you guide me what would be the best way to start off with.
>>>>>>>>
>>>>>>>> Regards!
>>>>>>>>
>>>>>>>
>>>>>>> Sounds like good goals for the community bonding period.
>>>>>>>
>>>>>>> I've added you as a developer on our self-hosted Allura project
>>>>>>> https://forge-allura.apache.org/p/allura/ which means you can assign
>>>>>>> tickets to
>>>>>>> yourself, make new ones, update existing ones, etc.  I'd recommend
>>>> having
>>>>>>> many
>>>>>>> small incremental tickets (perhaps even smaller pieces of work than
>> you
>>>>>>> outlined
>>>>>>> in the project proposal), so that its easy to manage them and review
>>>>>>> them.  And
>>>>>>> of course you don't need to make them all right away :)
>>>>>>>
>>>>>>> To familiarize yourself with Allura, you can read more of the
>>>>>>> documentation -
>>>>>>> assuming you haven't read it all already ;)
>>>>>>> https://forge-allura.apache.org/docs/
>>>>>>>
>>>>>>> And working on Allura code itself is best.  Find an existing ticket
>> or
>>>>>>> anything
>>>>>>> you notice that could be made better, and make a fix for it.  A
>> really
>>>>>>> easy one
>>>>>>> that I could suggest is https://forge-allura.apache.or
>>>>>>> g/p/allura/tickets/1699/
>>>>>>>
>>>>>>> I've also noticed that our test suite has failed the past few times:
>>>>>>> https://builds.apache.org/blue/organizations/jenkins/Allura/activity
>>>> It
>>>>>>> probably is related to the "Make debug pages and post permalinks work
>>>>>>> correctly
>>>>>>> when behind a proxy" commit.  You could take a look at fixing that if
>>>> you
>>>>>>> want.
>>>>>>> Otherwise I will soon.
>>>>>>>
>>>>>>> Lastly, reviewing other people's work is a good way to get familiar
>>>> with
>>>>>>> the
>>>>>>> code and best practices.  I will have a fix for
>>>>>>> https://forge-allura.apache.org/p/allura/tickets/6353/ coming soon,
>> so
>>>>>>> watch out
>>>>>>> for that.  You won't be able to merge my branch to master, but it can
>>>> be
>>>>>>> a good
>>>>>>> way for you to learn from others.  And any constructive feedback
>> would
>>>> be
>>>>>>> welcome too, of course.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Dave Brondsema : d...@brondsema.net
>>>>>>> http://www.brondsema.net : personal
>>>>>>> http://www.splike.com : programming
>>>>>>>               <><
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> *Deshani Geethika*
>>>>>> Undergraduate at Department of Computer Science and Engineering
>>>>>> Faculty of Engineering - University of Moratuwa Sri Lanka
>>>>>> LinkedIn <https://www.linkedin.com/in/deshanigeethika/> | GitHub
>>>>>> <https://github.com/deshanigtk> | Mobile - +94776383034
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Dave Brondsema : d...@brondsema.net
>>>> http://www.brondsema.net : personal
>>>> http://www.splike.com : programming
>>>>               <><
>>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> Dave Brondsema : d...@brondsema.net
>> http://www.brondsema.net : personal
>> http://www.splike.com : programming
>>               <><
>>
> 
> 
> 



-- 
Dave Brondsema : d...@brondsema.net
http://www.brondsema.net : personal
http://www.splike.com : programming
              <><

Reply via email to