Unterhaltung mit #deegree

(14:27:17) Das Thema für #deegree ist: Welcome to deegree, an OSGeo project. Visit the main project page at http://deegree.org and our wiki at http://wiki.deegree.org with lots of extra info. Check out a running system at http://demo.deegree.org and follow us on twitter @deegree_org.
(14:30:20) copierrj [~chatzilla@83.247.8.136] hat den Raum betreten.
(14:32:40) markusschneider: hi everybody!
(14:33:10) markusschneider: torsten just send me a message that he needs another 5 mins
(14:33:40) copierrj: hi
(14:33:51) StephanR: hello
(14:41:05) markusschneider: how much longer shall we wait for torsten?
(14:41:23) markusschneider: ahh
(14:41:24) copierrj: few minutes?
(14:41:27) markusschneider: i see him on skype
(14:41:30) copierrj: ok
(14:42:21) tfr42 [02cc7f79@gateway/web/freenode/ip.2.204.127.121] hat den Raum betreten.
(14:43:48) paul999 [~root@phpbb/modifications/paul] hat den Raum betreten.
(14:44:07) markusschneider: torsten?
(14:44:12) tfr42: Hello?
(14:44:15) copierrj: hi
(14:44:18) StephanR: hi
(14:44:41) markusschneider: well, let's start then, shall we?
(14:44:46) tfr42: Sorry, for beeing late. I am at a museum in berlin right now
(14:44:51) markusschneider: welcome to the meeting
(14:44:53) tfr42: yes please
(14:45:03) markusschneider: the agenda can be found here: http://wiki.deegree.org/deegreeWiki/TmcMeeting/TmcMeeting20140415
(14:45:21) markusschneider: anything you would like to add?
(14:46:06) copierrj: suggestions for agenda joint tmc / psc meeting
(14:46:17) markusschneider: ok
(14:46:52) markusschneider: anything else?
(14:47:15) copierrj: not for me
(14:47:17) markusschneider: btw, i didn't put the pull request, because we seem to have a blocking issue
(14:47:30) tfr42: OK
(14:47:35) markusschneider: great. let's start with the first item then
(14:47:47) markusschneider: Pull requests and automatic testing
(14:48:18) tfr42: Let's welcome Stephan first!
(14:48:22) markusschneider: oops
(14:48:25) markusschneider: right :-)
(14:48:32) markusschneider: sorry, stephan!
(14:48:34) markusschneider: first item:
(14:48:39) StephanR: nope ;-)
(14:48:40) markusschneider: Welcome Stephan Reichhelm
(14:48:43) tfr42: Hi Stephan, great that you have joined the community!!!!
(14:48:46) copierrj: welcome stephan!
(14:48:50) markusschneider: welcome
(14:49:18) StephanR: Thanks everbody
(14:49:24) markusschneider: if you have any questions or problems don't hesitate to bother us. or the psc ;-)
(14:49:41) copierrj hat den Raum verlassen (quit: Quit: ChatZilla 0.9.90.1 [Firefox 28.0/20140314220517]).
(14:49:55) markusschneider: so, next item would be "Pull requests and automatic testing"
(14:50:03) markusschneider: let's see if reijer comes back...
(14:50:07) copierrj [~chatzilla@83.247.8.136] hat den Raum betreten.
(14:50:13) markusschneider: welcome back, reijer
(14:50:14) copierrj: sorry closed wrong window
(14:50:19) tfr42: ;-)
(14:50:47) markusschneider: this problem is getting more and more severe, imho
(14:50:57) markusschneider: this is for two reasons:
(14:51:11) markusschneider: 1. andreas left. he always fixed integration tests in no time...
(14:51:32) markusschneider: 2. we have additional providers of pull requests (which break tests more often)
(14:51:46) tfr42: 2. is great
(14:51:51) tfr42: first is not
(14:51:57) markusschneider: right :-)
(14:52:08) markusschneider: Therefore, in the past months, merging of erroneous pull requests into deegree3 master and 3.3-master lead to delays and a lot of additional work to fix them afterwards.
(14:52:35) markusschneider: The good thing is that Torsten already seem to have found the right tool for the job....
(14:52:39) markusschneider: travis
(14:53:10) markusschneider: it tests incoming pull requests *automatically* by running the project's tests...
(14:53:24) tfr42: yes, that could solve some issues
(14:53:47) tfr42: but deegree has only a few real unit tests and a lot of integration tests
(14:53:55) markusschneider: exactly
(14:54:05) tfr42: the latter require external services
(14:54:06) markusschneider: getting the unit tests running with travis was easy
(14:54:23) tfr42: which are not online 24/7
(14:54:24) markusschneider: getting the integration tests running is more work
(14:55:02) markusschneider: on the other hand, most "integration tests" (under deegree-tests) do not depend on external services.
(14:55:10) tfr42: can you describe what the tasks have been in the past to get the integration tests running
(14:55:42) markusschneider: i checked out myself today...
(14:55:47) markusschneider: 1. MAVEN_OPTS="-Xmx2048m -XX:ReservedCodeCacheSize=256m -XX:MaxPermSize=512m"
(14:55:53) markusschneider: 2. mvn -Pintegration-tests,oracle,mssql,handbook clean install
(14:56:05) markusschneider: 3. Wait for about 15 mins (on a very fast machine)
(14:56:25) markusschneider: 4. mvn surefire-report:report-only -Daggregate=true
(14:56:32) markusschneider: 5. look at the html test results
(14:56:46) copierrj: 6. be confused
(14:56:50) markusschneider: right
(14:57:19) markusschneider: i thinkg it would be much better, if integrations tests would work according to maven practices
(14:57:30) markusschneider: i.e. in the integration-test phase
(14:57:52) copierrj: many could (should imho) be rewriten as proper unit tests
(14:58:11) copierrj: a lot of stuff is just basic protocol implementation testing
(14:58:46) markusschneider: i agree, but we only have limited resources, i believe...
(14:59:11) copierrj: unless someone with money steps in...
(14:59:47) markusschneider: anybody :-)
(14:59:49) markusschneider: ?
(15:00:07) copierrj: well, there are a few companies involved in the project...
(15:00:29) copierrj: (something i would like to talk about during the joint meeting)
(15:01:14) tfr42: good idea to put that on the agenda
(15:01:21) markusschneider: well, as releases are actually blocked, i would suggest to go for a low-effort solution for now...
(15:01:48) copierrj: for now we could disable the integration tests which depend on external services
(15:02:07) markusschneider: agreed
(15:02:17) copierrj: these are actually technically the only real integration test
(15:02:25) tfr42: do you have an overview which IT depend on external services?
(15:02:39) markusschneider: basically, remotewmts and...
(15:02:55) markusschneider: moment
(15:03:32) markusschneider: i believe, it's mostly deegree-wms-remoteows-tests and deegree-wmts-tests
(15:03:39) markusschneider: there may be a few more...
(15:03:52) markusschneider: however, the bulk does not depend on external servers
(15:03:56) tfr42: good
(15:04:04) markusschneider: most importantly:
(15:04:05) markusschneider: deegree-compliance-tests
(15:04:16) tfr42: what about them?
(15:04:23) copierrj: they cause the real pain...
(15:04:42) markusschneider: but they do not depend on external servers
(15:04:46) markusschneider: which is good
(15:04:54) copierrj: no, they bootstrap a deegree service
(15:05:09) markusschneider: btw, are these real integration tests in that case?
(15:05:10) copierrj: but they do external (read: tcp level) requests
(15:05:22) copierrj: no imho
(15:05:42) copierrj: integration tests is for testing compat. between different packages
(15:05:52) markusschneider: packages being?
(15:06:00) copierrj: other ogc impl
(15:06:06) copierrj: servlet containers
(15:06:13) copierrj: any dependency basically
(15:06:22) copierrj: not available at build time
(15:06:42) markusschneider: ok, to summarize
(15:07:18) markusschneider: necessary steps to get reasonable testing with Travis going:
(15:07:21) tfr42: we have to decide if we will use travis-ci for
(15:07:38) tfr42: testing the deegree code
(15:07:49) markusschneider: shall i outline the steps first or after that decision?
(15:07:51) tfr42: we havn't decided yet
(15:07:58) tfr42: ok
(15:08:04) markusschneider: steps
(15:08:05) tfr42: we can do this afterwards
(15:08:09) tfr42: please go on
(15:08:12) markusschneider: 1. Creation of travis.yml (done)
(15:08:21) markusschneider: 2. Use best practices for Maven integration tests (e.g. consider test failures to be fatal, don't use a profile for running integration-tests)
(15:08:38) markusschneider: 3. Fix integration tests that depend on external services
(15:08:56) markusschneider: afterwards, we may still improve tests, of course ;-)
(15:09:22) markusschneider: according to my tests, using travis should work ok
(15:09:24) tfr42: and put guidelines for testing online
(15:09:32) markusschneider: right
(15:09:35) copierrj: could you explain step 3?
(15:09:43) copierrj: what do you mean by 'fix'?
(15:09:45) markusschneider: fix = disable
(15:09:51) copierrj: ok
(15:10:04) tfr42: for now
(15:10:26) markusschneider: right. and discuss better ways on the joint meeting...
(15:10:31) tfr42: but we should try to refactor them that these IT can work without external services
(15:10:38) tfr42: if this is feasible
(15:10:43) copierrj: mocking is the word here
(15:10:57) markusschneider: agreed
(15:11:10) copierrj: behavior should be captured in a mock
(15:11:27) markusschneider: so, shall we vote on trying to establish travis-based testing now?
(15:11:41) copierrj: yes, please...
(15:11:48) tfr42: Yes
(15:11:51) markusschneider: please give your votes then
(15:11:51) markusschneider: +1
(15:11:53) copierrj: +1
(15:11:54) tfr42: +1
(15:11:58) StephanR: +1
(15:12:02) markusschneider: great
(15:12:08) copierrj: cool
(15:12:31) tfr42: who will prepare the pull request to enable travis-ci?
(15:12:34) markusschneider: i would suggest to perform the required steps for the next TMC meeting
(15:12:47) markusschneider: i am willing to lead that. help appreciated, of course.
(15:13:11) tfr42: great
(15:13:26) markusschneider: for 3.3 and 3.4, that is
(15:13:38) copierrj: should be enough for now imho
(15:13:45) tfr42: and we accept that oracle and mssqlserver support are not in that inital build config, right?
(15:14:00) markusschneider: i am afraid so
(15:14:13) copierrj: there is no way to facilitate that probably
(15:14:18) markusschneider: however, there are ways to get third-party libraries over to travis
(15:14:27) markusschneider: even in a secure fashion
(15:14:41) copierrj: is that allowed by Oracle eula?
(15:14:42) tfr42: that is then the second step, right?
(15:14:47) markusschneider: i described that in an email several weeks ago
(15:15:07) markusschneider: i suggest to do that later...
(15:15:33) copierrj: is fine with me
(15:15:39) markusschneider: great
(15:15:52) StephanR: distribution of oracle libraries is a problem, but i could investigate after the common part is done
(15:16:17) markusschneider: sounds good
(15:16:18) StephanR: to check how the oracle realted part can be solved
(15:16:27) tfr42: good
(15:16:54) copierrj: maybe we can refactor some of the oracle stuff to be no longer depended on ojdbc
(15:17:45) markusschneider: ok, shall we move on then?
(15:17:49) copierrj: ok
(15:18:18) markusschneider: PSC put a new TMC ticket:
(15:18:18) markusschneider: http://wald.intevation.org/tracker/index.php?func=detail&aid=6438&group_id=27&atid=303
(15:18:21) tfr42: and please add your comments in https://github.com/deegree/deegree3/wiki/Test-Practices for testing
(15:18:59) copierrj: perhaps we can phase out buildserver.deegree.org eventually?
(15:19:24) copierrj: is there anything travis cannot do?
(15:19:26) tfr42: I would suggest that as soon as we have travis-ci rinning
(15:20:06) copierrj: download.deegree.org is no longer in use
(15:20:16) markusschneider: travis-ci cannot deploy artifacts...
(15:20:22) copierrj: hmm, that sucks
(15:20:23) markusschneider: at least the public version
(15:20:36) markusschneider: it's for testing, not for releasing
(15:20:55) copierrj: well, we don't release that often
(15:21:19) copierrj: and in the future only after travis confirms that it is buildable
(15:21:34) markusschneider: maybe we should add this to the tmc/psc joint agenda?
(15:21:36) tfr42: the release job can remain at our server
(15:21:42) markusschneider: infrastructure?
(15:21:46) tfr42: but there is codeship
(15:22:23) markusschneider: i believe this is part of modernizing our infrastructure policy...
(15:22:29) tfr42: yep
(15:22:46) markusschneider: response to psc:
(15:22:54) markusschneider: for now, we still need buildserver.deegree.org
(15:23:18) markusschneider: however, follow-up discussion at joint meeting
(15:23:22) copierrj: ok
(15:24:27) markusschneider: good
(15:24:28) markusschneider: ?
(15:24:41) markusschneider: shall we move on the last item then?
(15:24:51) tfr42: yes
(15:24:55) markusschneider: "Suggestions for agenda of joint tmc / psc meeting"
(15:25:04) markusschneider: 1. infrastructure
(15:25:31) tfr42: responsibility of PSC and TMC
(15:25:39) markusschneider: +1
(15:25:46) copierrj: +1
(15:25:55) tfr42: +1
(15:25:57) StephanR: +0
(15:26:12) copierrj: scope of the project / initiative (developers tool vs end user tool)
(15:26:29) copierrj: that was on our previous agenda
(15:26:34) markusschneider: +1
(15:26:44) copierrj: unfortunately we didn't have the time to talk about it
(15:27:33) markusschneider: your opinions on that topic?
(15:27:53) copierrj: could be both
(15:28:05) markusschneider: sorry, i meant +1/0/-1?
(15:28:10) copierrj: oh
(15:28:12) copierrj: +1
(15:28:17) markusschneider: +1
(15:28:33) StephanR: +1
(15:28:53) tfr42: +1
(15:28:59) markusschneider: ok
(15:29:10) copierrj: another one: much needed cleanups (aka 'technical dept')
(15:29:26) markusschneider: debts, you mean?
(15:29:44) copierrj: http://en.wikipedia.org/wiki/Technical_debt
(15:30:00) markusschneider: yes, i like that
(15:30:01) markusschneider: +1
(15:30:12) copierrj: +1
(15:30:16) tfr42: how to measure it?
(15:30:28) copierrj: is difficult (in general)
(15:30:41) copierrj: i could prepare a presentation if you like
(15:30:48) copierrj: (and my boss is willing to pay...)
(15:31:02) copierrj: it's a major issue for me
(15:31:20) StephanR: 0
(15:31:20) markusschneider: maybe we can extend the topic to: project investments from the different companies involved...
(15:31:31) markusschneider: including mailing list support
(15:31:38) copierrj: that's another topic imho
(15:31:52) markusschneider: we discussed that last time, but nobody seemed to care afterwards
(15:32:11) copierrj: we never really discussed it imho
(15:32:36) markusschneider: well, last time we did agree on the number of hours per month that each company would invest....
(15:33:00) copierrj: i was still talking about 'technical dept'
(15:33:08) markusschneider: ok
(15:33:26) markusschneider: well, let's put it on the agenda
(15:33:46) copierrj: the investments have been limited because of underestimated potential gains imho
(15:34:01) markusschneider: may be, yes
(15:34:16) markusschneider: anything else?
(15:34:25) markusschneider: web site?
(15:34:40) copierrj: not everyone voted yet
(15:34:45) markusschneider: torsten?
(15:34:59) copierrj: on both issues
(15:35:16) tfr42: on what, sorry?
(15:35:20) tfr42: technical debt
(15:35:25) copierrj: yes
(15:35:44) markusschneider: +1
(15:35:46) tfr42: without tool without guidelines, without goal
(15:35:54) tfr42: 0
(15:36:08) copierrj: so it's on the agenda?
(15:36:13) copierrj: 0+0+1+1=2
(15:36:14) markusschneider: well, you can prepare any thoughts for the real discussion?!
(15:36:17) markusschneider: sure
(15:36:21) copierrj: i can
(15:36:47) markusschneider: topic proposal: "voluntary project investments from the different companies involved"
(15:36:52) markusschneider: +1
(15:36:56) copierrj: +1
(15:37:10) tfr42: +1
(15:37:14) StephanR: +1
(15:37:17) markusschneider: thx
(15:37:21) copierrj: although it could/should do without 'voluntary'
(15:37:28) markusschneider: ok
(15:37:42) markusschneider: i'll put it in parantheses
(15:37:46) markusschneider: parentheses
(15:37:51) copierrj: nice
(15:38:11) markusschneider: another proposal: "web-site maintenance"
(15:38:22) markusschneider: +1
(15:38:25) copierrj: still an open issue?
(15:38:26) tfr42: +1
(15:38:41) markusschneider: well, nothing happened, right?
(15:38:45) tfr42: very important
(15:38:51) copierrj: ok: +1
(15:38:59) StephanR: +1
(15:39:01) copierrj: (i'm afraid we have too much for one day...)
(15:39:11) markusschneider: anything else?
(15:39:18) copierrj: yes:
(15:39:53) copierrj: perhaps too technical: error handling (fault tolerance vs fail fast)
(15:40:02) markusschneider: too technical, yes
(15:40:24) copierrj: but it is something to be discussed sometime, somewhere imho
(15:40:43) markusschneider: let's vote then...
(15:40:44) markusschneider: 0
(15:40:46) copierrj: deegree is currently 'wrong' at this point imho
(15:41:05) copierrj: +0.5
(15:41:13) copierrj: also think it is too technical
(15:41:30) copierrj: and we also have more important things to discuss
(15:41:50) markusschneider: you want to backdraw the proposal then?
(15:42:03) copierrj: still interested in votes....
(15:42:22) copierrj: call it a poll
(15:42:22) markusschneider: personally, i would suggest to close the meeting soon...
(15:42:34) copierrj: ok
(15:42:35) tfr42: 0
(15:42:39) markusschneider: stefan?
(15:42:46) StephanR: +0 i agree that the topic is to technical
(15:42:49) markusschneider: ok
(15:43:07) tfr42: great
(15:43:11) markusschneider: thanks so far. i would suggest to meet next week
(15:43:21) tfr42: uh
(15:43:24) markusschneider: no?
(15:43:40) markusschneider: i would like to get the pulls working again ASAP
(15:43:42) tfr42: it is quite packed due to easter monday public holiday
(15:43:46) markusschneider: ok
(15:43:49) copierrj: we should merge pulls requests yesterday
(15:44:04) copierrj: how about later this week?
(15:44:31) markusschneider: i am unavailable on thursday...
(15:44:34) tfr42: please prepare a doodle
(15:44:47) copierrj: i'll do that
(15:44:50) markusschneider: great
(15:44:53) tfr42: great
(15:45:02) markusschneider: thank you and good bye
(15:45:07) tfr42: bye
(15:45:08) StephanR: bye
(15:45:11) copierrj: bye
(15:45:11) markusschneider: bye