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 <><