[pypy-svn] r44869 - in pypy/extradoc/talk/ep2007: howtoeu pytest
hpk at codespeak.net
hpk at codespeak.net
Mon Jul 9 12:22:27 CEST 2007
Author: hpk
Date: Mon Jul 9 12:22:26 2007
New Revision: 44869
Added:
pypy/extradoc/talk/ep2007/howtoeu/
pypy/extradoc/talk/ep2007/howtoeu/howtoeu.txt
pypy/extradoc/talk/ep2007/howtoeu/ui (contents, props changed)
pypy/extradoc/talk/ep2007/pytest/
pypy/extradoc/talk/ep2007/pytest/pytest.txt
pypy/extradoc/talk/ep2007/pytest/ui (contents, props changed)
Log:
commit py test talk and howtoeu talk here
to make it more easily sharable.
Added: pypy/extradoc/talk/ep2007/howtoeu/howtoeu.txt
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/ep2007/howtoeu/howtoeu.txt Mon Jul 9 12:22:26 2007
@@ -0,0 +1,195 @@
+
+.. include:: <s5defs.txt>
+
+
+==================================================
+How to do an open source EU research project
+==================================================
+
+
+:authors: Lene Wagner, Holger Krekel (merlinux GmbH)
+:event: 10.7.2007, EuroPython 2007, Vilnius
+
+
+Intro
+===================
+
+- have participated and contributed to the PyPy EU project
+- experiences
+- discuss *open source* research projects
+ (cut out IPR issues more or less completely)
+
+EU Framework Research Programme
+====================================
+
+- IST = Information Society and Technology
+- PyPy was a STREP
+- FP7 spends some 20.000.000.000 Euro in 7 years
+- regularly publishes Work Programmes and Topics
+- puts out CALLS for Proposals
+- we mainly try to discuss FP7 (a few changes from FP6)
+
+Getting started
+=====================
+
+- vision / idea?
+- read Work programmes / CALL topics
+- finding people to collaborate
+- finding a set of organisations
+- drafting a proposal ...
+
+(Research) Objectives?
+==============================
+
+- core research objective(s)
+ (state of the art & how the project aims beyond)
+- core technical objectives?
+- core other objectives? (methodological/social)
+
+can you summarize it on one page?
+
+The Proposal
+===============
+
+- High level Objectives
+- Impact on industry and society
+- management structures
+- work plan in long form
+- detailed description of work packages
+- budget
+
+Work Packages
+===================
+
+- each has a specific objective
+- Person Months allocated from Partners
+- Lead Partner
+- Deliverables (Reports, Releases, Papers)
+
+consortium
+============================
+
+- looking for interested parties
+- consortium consists of organisations
+- is collective entity towards EU
+- requires co-ordinator/contact person for EU
+- receives and distributes money
+
+
+applying to the EU
+=========================
+
+- answer to CALLS within stated deadline
+- co-ordinator registers project and proposal
+- proposals gets reviewed by *independent* experts
+- proposals receive points (PyPy had 26 out of 30)
+- Invitation to "negotiation"
+- Project duration?
+
+Negotiation
+==============
+
+- discuss criticism of reviewers, change proposal
+- Prepare paperwork (CPF = Contract Preparation Forms)
+- sign CONTRACT with the European Union
+
+Funding Schemes
+=====================
+
+XXX (lene) no more cost models, will check furthermore
+- Universities receive (basically) 100% funding
+- Small/Medium Companies (SME) receive 75% funding of costs
+- FCF = 20% Flat administrative overhead added to costs
+- FC = actual indirect costs
+
+
+Signing the contract?
+========================
+
+
+Infrastructure
+==================
+- ensure close collaboration of non co-located developers
+- ensure openness for external contributors
+- ensure consistency of codebase/project
+- PyPy: IRC, svn, mailing lists
+
+
+Management structures
+============================
+
+- administrative team (preparing consortium decisions)
+- Technical Board (discussing problems, deciding roadmap)
+- developer body (everybody can participate)
+- Consortium
+
+XXX insert the graph from the EU talks that shows
+the overlap - seems important to me in the open
+source context to recommend close and overlapping
+structures
+
+
+Meetings and Sprints
+============================
+
+- sprints are the rhythm of the project
+- plan for core and for newcomer-friendly sprints
+- integrate a model for funding contributors!
+
+
+Contractual and actual developments
+=====================================
+- Contract implies a 'plan' for the development
+- Project may evolve into other directions
+- checkpoints for assessing the work package status
+
+Planning for changes
+===========================
+
+- be able to shift work among partners
+- if necessary: amend work plan, change the contract with the EU
+- but: don't touch the objectives!
+
+
+Reporting / Deliverables
+============================
+
+- interim reviews each 18 months
+- contractual and technical deliverable
+- contractual deliverables
+
+Recommendations
+====================
+
+- sprint-driven model of development;
+- share some funding with upcoming contributors;
+- balance contractual with community interests
+- consider changes to the contractual work plan if
+ it fits the objectives better;
+- implement a transparent and flat communication and decision
+ culture, be ready to adjust roles and not stick to formal issues too much.
+
+Roles and Responsbilities
+============================
+
+- assign responsibilities to people
+
+ - per aspect (administration, technical, research)
+ - per work package
+
+- plan for changing responsibilities
+
+Changes from FP6 to FP7
+=============================
+
+- less collective financial responsibility?
+- 75% funding for (small/medium) companies
+- XXX
+
+
+What remains?
+================================
+
+- build the project on a shared vision and shared interest
+- don't build it on money (too much)
+
Added: pypy/extradoc/talk/ep2007/howtoeu/ui
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/ep2007/howtoeu/ui Mon Jul 9 12:22:26 2007
@@ -0,0 +1 @@
+link ../ui
\ No newline at end of file
Added: pypy/extradoc/talk/ep2007/pytest/pytest.txt
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/ep2007/pytest/pytest.txt Mon Jul 9 12:22:26 2007
@@ -0,0 +1,157 @@
+.. include:: <s5defs.txt>
+
+=================================================================
+py.test: towards interactive, distributed and rapid testing
+=================================================================
+
+:authors: Holger Krekel, Maciej Fijalkowski (merlinux GmbH)
+:event: 9.7.2007, EuroPython 2007, Vilnius
+
+
+Intro
+===================
+
+- py.test released 0.9 as part of py lib, feb 2007
+- cross-project external testing tool
+- many mature and experimental features
+- minimal boilerplate approach
+- developed partly for purposes of PyPy
+- this talk will assess status and discuss future
+
+recap features
+======================
+
+- assertion via "assert", nice tracebacks
+- automatic customizable collection of tests
+- test state management (module,class,function)
+- capture stdout/stderr per-test
+- select tests by keyword
+- generative tests, doctests, ReST-tests, ...
+
+ad-hoc distribution of tests
+===================================
+
+``py.test --dist`` sends tests to remote places
+or multiple processors
+
+- for each host:
+
+ - setup (ssh) connection
+ - sync local source code to remote place
+ - trigger running of (isolated) tests
+
+ad-hoc distribution of tests (2)
+=====================================
+
+- synchronise source code "1 -> N" simultanously
+- uses py.execnet:
+
+ - can connect e.g. via SSH
+ - expects plain Python executable on remote side
+ - no need to pre-install other software remotely
+
+- generated AJAX application async displays test results
+
+- demo
+
+cross-platform testing
+=============================
+
+- test run on linux, test execution on windows
+- uses py.execnet (same technique as "--dist")
+- works well with "--looponfailing"
+
+status cross-platform/distributed testing
+==============================================
+
+- should basically work for any project
+- gives full tracebacks, most options work
+
+todo:
+
+- make introspection/pdb work
+- use ``screen`` for access to failed tests
+- accellerate py.execnet setup
+- more unification with other testing modes
+
+collect info about functions (apigen)
+=============================================
+
+- collect function signatures (via settrace)
+- track input values/types, stacktraces, return values
+- web page with rich automatically produced information
+- TODO: decoupling of collecting info and generating html
+
+doctests
+==============
+
+- basically work (automatically collected from text files)
+- uses 2.5's doctest module
+- needs more fine-grained integration
+
+Unifying Test Reporting
+=================================
+
+- py.test contains two approaches for processing test results:
+
+ - "old style": reporting methods invoked on session object
+ - "new style": generate reporting events -> Reporter object(s)
+
+next:
+
+ - settle on reporting event architecture
+ - refactor and document reporting events
+ - use Reporter object(s)
+
+py.test extensions (conftest)
+=================================
+
+- all conftest.py files are considered in traversed directories
+- can extend/modify testing process in arbitrary ways
+- however:
+
+ - often requires too much knowledge of internal architecture
+ - no convention for organising shared test support code
+
+- ergo: introduce mechanism to share test support code / plugins
+
+
+Platform support
+======================
+
+- py lib works on linux, freebsd, windows and OSX
+- works on python 2.3, 2.4, 2.5
+- py lib provides doctest/optparse/... unified compat modules
+- todo: improve and automate packaging/installation
+
+test networks
+==================
+
+- currently model for 1:1 process-to-process
+- "A <-> B and B <-> C" connections do not imply "A <-> C"
+- fix that!
+- then: manage (large) network of test hosts
+- select set of test deployment hosts by platform, load
+- have modes for testing on several platforms at once
+
+difference to "buildbot" ...
+==================================
+
+- py.test generally works from developers WC
+- no need to first commit and wait for later (nightly) test run
+- interactive developer driven choice of test setting
+
+summary development topics
+=============================
+
+- refactor/unify reporting mechanisms
+- introduce shared test support code (plugins)
+- improve py.execnet (towards networks)
+- interactive debugging / introspection everywhere
+- systematically persist test results
+
+Goal
+=============
+
+Maximize fun and efficiency of (test-driven) development
+
Added: pypy/extradoc/talk/ep2007/pytest/ui
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/ep2007/pytest/ui Mon Jul 9 12:22:26 2007
@@ -0,0 +1 @@
+link ../ui
\ No newline at end of file
More information about the pypy-svn
mailing list