Discussion:
[Trac-dev] about starting point of contribution
Walty Yeung
2015-05-10 04:59:54 UTC
Permalink
hi,

I have been using trac for 5+ years now, and I really love the simple and
yet powerful design of whole thing.

I have modified the source code of trac myself, to add some more tools for
the use of our company (internally).

and now I would like contribute back to the Trac project. I have read the
wiki of http://trac.edgewall.org/wiki/HowToContribute, and briefly checked
the coding style, unit test, and patch submitting mechanism.

and my question is, is the bite-sized tasks
(http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.

thanks.
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Ryan Ollos
2015-05-10 21:13:35 UTC
Permalink
Post by Walty Yeung
hi,
I have been using trac for 5+ years now, and I really love the simple and
yet powerful design of whole thing.
I have modified the source code of trac myself, to add some more tools for
the use of our company (internally).
and now I would like contribute back to the Trac project. I have read the
wiki of http://trac.edgewall.org/wiki/HowToContribute, and briefly
checked the coding style, unit test, and patch submitting mechanism.
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
thanks.
Hello Walty,

We would be very happy to have you contribute. Thank you for getting
started by seeking out and reading the right documents.

Bite-sized tickets are a good place to get started so that we can bring you
up to speed on how we develop Trac, including things that may not have
(yet) been documented. You are right that the bite-sized tasks are not up
to date. We haven't done a good job lately of marking tickets as
bite-sized. I'll plan to review and mark tickets as bite-size in the next
several days.

In the meantime, you could find some very relevant tickets to work on by
surveying the tickets assigned to next-stable-1.0.x and next-dev-1.1.x:
http://trac.edgewall.org/milestone/next-stable-1.0.x
http://trac.edgewall.org/milestone/next-dev-1.1.x

Those are tickets we've determined should be fixed on the maintenance
branch for 1.0 or the development branch for 1.2. We certainly won't get to
all of them by the time 1.2 is released, so we would sure appreciate help
in knocking out some of those.

We are currently preparing the next release, hoping to finish today. After
that we will dive into developing for the next milestones. I've found that
a good way to learn is to checkout the changes that other devs post for
review, code review the changes and run the tests. It always helps to have
the tests executed on one more platform. When I started working on the
project I found at least a half-dozen issues with the tests that were due
to my developing on a platform with a different configuration than the
other devs.

- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-05-11 02:50:02 UTC
Permalink
Post by Ryan Ollos
Post by Walty Yeung
hi,
I have been using trac for 5+ years now, and I really love the simple and
yet powerful design of whole thing.
I have modified the source code of trac myself, to add some more tools
for the use of our company (internally).
and now I would like contribute back to the Trac project. I have read the
wiki of http://trac.edgewall.org/wiki/HowToContribute, and briefly
checked the coding style, unit test, and patch submitting mechanism.
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
thanks.
Hello Walty,
We would be very happy to have you contribute. Thank you for getting
started by seeking out and reading the right documents.
Bite-sized tickets are a good place to get started so that we can bring
you up to speed on how we develop Trac, including things that may not have
(yet) been documented. You are right that the bite-sized tasks are not up
to date. We haven't done a good job lately of marking tickets as
bite-sized. I'll plan to review and mark tickets as bite-size in the next
several days.
In the meantime, you could find some very relevant tickets to work on by
http://trac.edgewall.org/milestone/next-stable-1.0.x
http://trac.edgewall.org/milestone/next-dev-1.1.x
Those are tickets we've determined should be fixed on the maintenance
branch for 1.0 or the development branch for 1.2. We certainly won't get to
all of them by the time 1.2 is released, so we would sure appreciate help
in knocking out some of those.
We are currently preparing the next release, hoping to finish today. After
that we will dive into developing for the next milestones. I've found that
a good way to learn is to checkout the changes that other devs post for
review, code review the changes and run the tests. It always helps to have
the tests executed on one more platform. When I started working on the
project I found at least a half-dozen issues with the tests that were due
to my developing on a platform with a different configuration than the
other devs.
- Ryan
hi ryan,

thanks for your detailed instructions. two quick questions, just to make
sure I did fully understand the suggestions:

1. Where could I get the changes of review? should I read the timeline
page (http://trac.edgewall.org/timeline)? Or is there some other places I
could read the reviews?

2. I currently checked out the trunk version of trac, and set up a
development environment in my mac. So, would u suggest to set up virtualbox
of ubuntu and windows to do a through testing before submitting the
patches? Or I could do that a little bit later?

thanks

have a nice day
walty
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Ryan Ollos
2015-05-11 04:14:13 UTC
Permalink
Post by Walty Yeung
hi ryan,
thanks for your detailed instructions. two quick questions, just to make
1. Where could I get the changes of review? should I read the timeline
page (http://trac.edgewall.org/timeline)? Or is there some other places I
could read the reviews?
Yeah, following the timeline (you can subscribe in an RSS feed reader) is
the way to keep track of progress on the project, as well as subscribing to
trac-users and trac-dev mailing lists.
Post by Walty Yeung
2. I currently checked out the trunk version of trac, and set up a
development environment in my mac. So, would u suggest to set up virtualbox
of ubuntu and windows to do a through testing before submitting the
patches? Or I could do that a little bit later?
To start with I think it's perfectly fine to develop on just the Mac. We'll
review your patches for platform-related issues and run the tests before
committing. At least, I always intend to do that, but even when I introduce
issues on other platforms or even forget to run the tests, the issues are
usually caught by the other devs very quickly. We have automated testing
running on Linux via Travis CI, and eventually I hope we can setup to test
for Windows on AppVeyor (1). I think I recall seeing the other day a
similar service for OSX, but I'd have to dig in my notes to be sure.

As a first step, I suggest just trying to run the tests (2, 3) on your OSX
machine. Read the output and you'll probably find some tests being skipped,
suggesting that you need to install more dependencies. I imagine you'll run
into an unresolved issue I encountered when starting to develop on the Mac
a few weeks back (3), or perhaps you'll find an entirely new issue! Either
way, it's good to establish that baseline and know what to expect from the
tests on your platform before you start editing code.

Starting out with Trac development is also a great opportunity to show us
where we can improve the documentation for new developers. There are many
things we'll have overlooked after working on the project for some time.
Any suggestions are welcomed!

(1) http://www.appveyor.com/
(2) http://trac.edgewall.org/wiki/TracDev/UnitTests
(3) http://trac.edgewall.org/wiki/TracDev/FunctionalTests
(4) http://trac.edgewall.org/ticket/12022
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
RjOllos
2015-05-11 16:53:14 UTC
Permalink
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start, #11937
should be fairly tractable:

http://trac.edgewall.org/ticket/11937

- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-05-12 00:17:55 UTC
Permalink
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start, #11937
http://trac.edgewall.org/ticket/11937
- Ryan
Hi Ryan,

Thanks a lot for your great patience and detailed explanation!

I would start with #11937 as my first try :)


have a nice day
walty
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-05-12 07:27:39 UTC
Permalink
Post by Walty Yeung
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start,
http://trac.edgewall.org/ticket/11937
- Ryan
Hi Ryan,
Thanks a lot for your great patience and detailed explanation!
I would start with #11937 as my first try :)
have a nice day
walty
Hi Ryan,

I just finished the code, and briefly tried it in my development tracd
environment.

And then I tried to write a functional test case for that, however I got
stuck when trying to run the functional test. I think I might still post
the question here, so it might help others in the future.

This is my functional test case:


-----------------------------


Index: trac/wiki/tests/functional.py

===================================================================

--- trac/wiki/tests/functional.py (revision 14055)

+++ trac/wiki/tests/functional.py (working copy)

@@ -495,6 +495,14 @@

tc.find(r"<h1>Trac Error</h1>")

tc.find('No version "" for Wiki page "WikiStart')



+class RegressionTestTicket11937(FunctionalTwillTestCaseSetup):

+ def runTest(self):

+ """Test for regression of http://trac.edgewall.org/ticket/11937

+ wiki suggestion should be based on 1 unit editing distance.

+ For example, visit of /wiki/CameCase should suggest /wiki/CamelCase

+ """

+ tc.go(self._tester.url + '/wiki/CameCase')

+ tc.find('CamelCase')

-----------------------------


I have installed twill, lxml and cssselect, but when I run 'python -m
trac.wiki.tests.functional', I got the following error:


-----------------------------

(tracDev)waltys-MacBook-Air:/app/tracDev/trac-trunk$python -m
trac.wiki.tests.functional

Traceback (most recent call last):

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py",
line 162, in _run_module_as_main

"__main__", fname, loader, pkg_name)

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py",
line 72, in _run_code

exec code in run_globals

File "/app/tracDev/trac-trunk/trac/wiki/tests/functional.py", line 542,
in <module>

unittest.main(defaultTest='suite')

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py",
line 95, in __init__

self.runTests()

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py",
line 232, in runTests

self.result = testRunner.run(self.test)

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/runner.py",
line 151, in run

test(result)

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/suite.py",
line 70, in __call__

return self.run(*args, **kwds)

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/suite.py",
line 108, in run

test(result)

File
"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/suite.py",
line 70, in __call__

return self.run(*args, **kwds)

File "trac/test.py", line 158, in run

self.setUp()

File "trac/tests/functional/__init__.py", line 144, in setUp

self._testenv.start()

File "trac/tests/functional/testenv.py", line 274, in start

tc.go(self.url)

File
"/app/ENV/tracDev/lib/python2.7/site-packages/twill-1.8.0-py2.7.egg/twill/commands.py",
line 109, in go

browser.go(url)

File
"/app/ENV/tracDev/lib/python2.7/site-packages/twill-1.8.0-py2.7.egg/twill/browser.py",
line 91, in go

raise TwillException("cannot go to '%s'" % (url,))

twill.errors.TwillException: cannot go to 'http://127.0.0.1:8149'

(tracDev)waltys-MacBook-Air:/app/tracDev/trac-trunk$

-----------------------------

I did not Google out much information, and I tried to install the latest
twill, as suggested here (http://trac.edgewall.org/ticket/11642), but still
no luck.

Any idea about this please?

thanks

have a nice day
walty
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Jun Omae
2015-05-12 08:05:22 UTC
Permalink
Hi,
Post by Walty Yeung
I did not Google out much information, and I tried to install the latest
twill, as suggested here (http://trac.edgewall.org/ticket/11642), but still
no luck.
Functional tests don't work with twill 1.8.0.
Instead, please try to install twill==0.9.1.

See http://trac.edgewall.org/browser/trunk/.travis.yml?marks=19#L18
--
Jun Omae <***@gmail.com> (大前 潤)
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-05-12 08:37:16 UTC
Permalink
thanks, it works!
Post by Jun Omae
Hi,
Post by Walty Yeung
I did not Google out much information, and I tried to install the latest
twill, as suggested here (http://trac.edgewall.org/ticket/11642), but
still
Post by Walty Yeung
no luck.
Functional tests don't work with twill 1.8.0.
Instead, please try to install twill==0.9.1.
See http://trac.edgewall.org/browser/trunk/.travis.yml?marks=19#L18
--
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Ryan Ollos
2015-05-13 21:24:26 UTC
Permalink
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start, #11937
http://trac.edgewall.org/ticket/11937
In case I've led you into a ticket that is more challenging than it seemed
from the outset, please don't be afraid to work several tickets in
parallel. That's usually what I do since I like the feeling of progress
from knocking out a ticket or two each week, and not every ticket I pickup
leads to immediate progress.

- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-05-15 00:05:23 UTC
Permalink
Post by Ryan Ollos
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start,
http://trac.edgewall.org/ticket/11937
In case I've led you into a ticket that is more challenging than it seemed
from the outset, please don't be afraid to work several tickets in
parallel. That's usually what I do since I like the feeling of progress
from knocking out a ticket or two each week, and not every ticket I pickup
leads to immediate progress.
- Ryan
No problem, I would have a look of other bite-sized tickets under the
milestone of next-dev-1.1.x
<http://trac.edgewall.org/milestone/next-dev-1.1.x>

Thanks.
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Walty Yeung
2015-06-13 00:41:45 UTC
Permalink
Post by Walty Yeung
Post by Ryan Ollos
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start,
http://trac.edgewall.org/ticket/11937
In case I've led you into a ticket that is more challenging than it
seemed from the outset, please don't be afraid to work several tickets in
parallel. That's usually what I do since I like the feeling of progress
from knocking out a ticket or two each week, and not every ticket I pickup
leads to immediate progress.
- Ryan
No problem, I would have a look of other bite-sized tickets under the
milestone of next-dev-1.1.x
<http://trac.edgewall.org/milestone/next-dev-1.1.x>
Thanks.
hi,

I am sorry that I bring up this thread again.

I have recently made the patch for #10144 and #11937 about 3 weeks ago, and
I still have no idea if such patches are fine or not.

Please don't misunderstand me, I am not trying to push for anything, but I
would like make sure I am on the right track (the patch format, style, and
code quality etc...) before I move on to other tickets.

thanks.
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Ryan Ollos
2015-06-13 00:45:50 UTC
Permalink
Post by Walty Yeung
Post by Walty Yeung
Post by Ryan Ollos
Post by RjOllos
Post by Walty Yeung
and my question is, is the bite-sized tasks (
http://trac.edgewall.org/query?status=new&status=assigned&status=reopened&keywords=~bitesized&group=component&order=priority)
still the optimal entry point of contribution now? I asked only because I
saw most of the tickets there are actually pretty old, and I am not sure if
they are actually outdated now, however, I don't mind to start with the
minor changes at all.
In case you are looking for specific suggestions on where to start,
http://trac.edgewall.org/ticket/11937
In case I've led you into a ticket that is more challenging than it
seemed from the outset, please don't be afraid to work several tickets in
parallel. That's usually what I do since I like the feeling of progress
from knocking out a ticket or two each week, and not every ticket I pickup
leads to immediate progress.
- Ryan
No problem, I would have a look of other bite-sized tickets under the
milestone of next-dev-1.1.x
<http://trac.edgewall.org/milestone/next-dev-1.1.x>
Thanks.
hi,
I am sorry that I bring up this thread again.
I have recently made the patch for #10144 and #11937 about 3 weeks ago,
and I still have no idea if such patches are fine or not.
Please don't misunderstand me, I am not trying to push for anything, but I
would like make sure I am on the right track (the patch format, style, and
code quality etc...) before I move on to other tickets.
thanks.
Hi Walty,

I'm sorry for the delay, and thank you for bearing with us. I'll try to
review your patches for tomorrow, and also suggest some tickets that are a
bit more straightforward to implement.

- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
RjOllos
2015-07-19 18:52:25 UTC
Permalink
Post by Ryan Ollos
hi,
Post by Walty Yeung
I am sorry that I bring up this thread again.
I have recently made the patch for #10144 and #11937 about 3 weeks ago,
and I still have no idea if such patches are fine or not.
Please don't misunderstand me, I am not trying to push for anything, but
I would like make sure I am on the right track (the patch format, style,
and code quality etc...) before I move on to other tickets.
thanks.
Hi Walty,
I'm sorry for the delay, and thank you for bearing with us. I'll try to
review your patches for tomorrow, and also suggest some tickets that are a
bit more straightforward to implement.
- Ryan
Hi Walty,

Since you aren't cc'ed on #10144 I just want to let you know that we've
reviewed your changes and I think we can finish the patch and include it in
Trac 1.2 if you make a few more minor revisions.

- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-dev+***@googlegroups.com.
To post to this group, send email to trac-***@googlegroups.com.
Visit this group at http://groups.google.com/group/trac-dev.
For more options, visit https://groups.google.com/d/optout.
Loading...