[20100908]
|
New core team policies: automated testing and peer review
Antti Kantee has recently joined
the NetBSD core team,
here is a first core announcement
sent out him about two new policies:
- ``new tests must be written using the Automated Testing Framework (ATF)
- core will no longer ok changes without prior public discussion
Extended versions:
1)
NetBSD has always been known for its high quality. To take quality
to the ultimate level, we are actively pushing for automated testing
with regularly run tests and uniform test reports. To this end,
we now require that all new tests are written using the ATF tool.
All exceptions for tests committed to the old src/regress framework
must be ok'd by core prior to commit.
You can find information about ATF from
http://www.NetBSD.org/~jmmv/atf/
and help on writing tests at
http://wiki.NetBSD.org/tutorials/atf/
Please test responsibly.
2)
In the past the core team has given an ok/no decision for changes
directly upon private request. To make NetBSD's review process
more transparent for developers and non-developers alike, core will
no longer bless a change without peer review on a public technical
list. The only exceptions are cases requiring confidentiality,
such as security vulnerabilities.
It is still desirable to inform core about long-term projects you
are working on. This way they can be part of the roadmap for
NetBSD. Be sure to state if you wish your project to remain
confidential until further notice.
Developers please note that large changes such as adding new packages
to src/external and sweeping kernel changes still require both peer
review and core approval. Contact core@ if you are unsure
about the nature of your change. ''
I regard both moves as excellent. For those non-developers out there
that want to participate, #1 may be an interesting thing for projects:
Pick a part of the system, and write regression tests to make sure
things work. Guidelines may be found e.g. in
the Single Unix Specification (SUS).
[Tags: atf, core]
|
[20080721]
|
Google and NetBSD Summer of Code Projects in 2008 - Midterm status reports (Updated)
Google's Summer of Code has passed the midterm date. With it, students
and their mentors were asked to give internal status reports of thei
works. While the internal reports themselves are not public, many of
our students have sent mail to NetBSD's public lists, giving details
on their status. Let's give a summary of the state of
affairs. Projects were students have posted reports come first:
- wscons: Expansion for wstablet in NetBSD
Student: Jason W. Beaudoin
To support tables for the wscons console driver, a number of
changes to the wscons API have been proposed in the student's
status report. While there are a number of similarities with
the wsmouse interface, there are also a number of differences
that need to be worked around, e.g. absolute vs. relative
coordinates. Many of the proposed changes are implemented, and
we're looking forward to complete this project successfully
within time.
Status report,
project page,
project proposal
- subfiles: Subfile Support for NetBSD
Student: Adam Burkepile
Subfile allow to associate data with a regular file, just like
regular allow to associate data with a directory. New internal
data structures were defined to identify subfiles within the
file system, and tools like newfs and dumpfs were adjusted. An
API is being designed to access subfiles, and work to realize
the assorted functions is being approached.
Status report part
1 /
2,
project page,
project proposal
- hurdt: Hurd translators
Student: Marek Dopiera
Translators are programs which provide filesystems in user
space functionality. This is provided via NetBSD's RUMP
interface, and additional system calls and file system
operations have been defined to activate the server processes
when access to such a "translator" is made. Currently, the
translators are only implemented in NetBSD's ext2 file system,
as this allows testing of interaction with Hurd - Hurd's
support for FFS seems non-working, unfortunately. The project's
under busy development, and we're looking forward to see the
final results.
Status report,
project page,
project proposal
- lvm: Write and improve NetBSD LVM driver
Student: Adam Hamsik
This project implements the Linux LVM API (libdevmapper) on
NetBSD, to allow using Linux' lvm2tools for logical volume
management. The project's making excellent progress, there is an
ISO image (see URL in status report) as well as a
qemu
image available for testing,
and latest
reports show that linear volumes can be configured and mounted
already.
Status report,
project page,
project proposal
- uvc: Add support for UVC devices (USB web-cams)
Student: Patrick Mahoney
A kernel driver was developed to read data from webcams using a
custom API, work to implement the video2linux API is under
way. Current challenges lie in NetBSD's USB stack, which lacks
support for isochronous transfers, which is used by many (but
not all) webcams. The project has made excellent progress so
far, and we're positive that the project will be a success.
Status report,
project page,
project proposal
- dvb: DVB drivers and kernel framework
Student: Jeremy Morse
This project implements a driver for Digital Video Broadcasting
to supplement bktr(4)'s TV card support. So far, a driver and
an API to transport data from the kernel to userland was
implemented, matching LinuxTV. The project's making good
progress, even due to conflicts with the academic schedule.
Status report,
project page,
project proposal
- install-tool: Customizable install tool for NetBSD
Student: Zachary Wegner
NetBSD's current installer, sysinst, is being split into
frontend and backend parts, with a configuration file building
the interface between the two parts. Untangling the current
mix of user interaction and install operation are ongoing, with
challenges like request of install media (think floppy #42) and
network configuration. Also, a parser for the configuration
file was written, and work not started yet is the frontend
creating the configuration file for the backend.
Status report,
project page,
project proposal
- fs-utils: File system access utilities
Student: Ysmal Arnaud
This project is using NetBSD's RUMP and the ukfs library to
access a file system image from userland. So far, makefs(1) can
generate a file system image, and it can now be manipulated as
well. Both a "file system console" as shell to operate on the
image as well as separate tools for single operations have been
designed. Many of the "normal" userland tools' functionality
like ls(1), cp(1) and rm(1) were implemented. This project has
made excellent progress so far, see the status report and
project page.
Status report,
project page,
project proposal
- cwrapper: pkgsrc: rewrite wrapper framework in C
Student: Amitai Schlair
The student was distracted by
travel obligations for some time, but work has started in
pkgsrc now. Current work includes a set of ATF tests to cover
the usage of the existing pkgsrc wrapper framework and a design
plan for the new wrapper implementation. The actual wrapper
implementation remains to be written, and we're looking forward
to see the it happen, including integration into pkgsrc plus
benchmarks on the increase in speed.
Status report,
project page,
project proposal
- atfify: Converting remaining regression tests to the Automatic Testing Framework
Student: Lukasz Strzygowski
The Automated Testing Framework was added to NetBSD as a result
of last year's Summer of Code. This year, all the remaining
regression tests from src/regress are being converted to
ATF. Test suites for tools (awk, grep, make, ...) and libraries
(libm, libpthread, ...) were converted so far. Tests for libc
are currently being converted, and kernel tests are next. We're
looking forward to get all of src/regress changed to ATF!
Status report,
project page,
project proposal
No status report was sent by the following students (or at least I
haven't seem one). Data given here is from the project pages, mostly:
- ext3: Implement Ext3 file system support
Student: Rus-Rebreanu Alin-Florin
This project intends to implement journaling in the file system
by reusing Wasbi's wapbl code. Unfortunately, little has
happend to reach this goal (to say the least), and the student
got AWOL. Interested
parties are welcome to try
out ext2fuse
(which also does ext3, despite the name) for now.
Project page,
project proposal
- packet-classes: Create an in-kernel API for "packet classes"
Student: Anish Babu
Nothing has happened in this project as well. I hear about
communication problems, and it remains to see if things move
forward here. :-(
Project page,
project proposal
- teredo: Implementation of RFC4380 (Teredo) in NetBSD
Student: Arnaud Lacombe
The project aims at creating a Teredo client, server and relay
via a kernel pseudo device and assorted userland tools.
The project is currently still in the analysis and design
phase, which will give it little time for completion -- as for
other students, this is due to a clash with the academic
schedule of the student. We're holding up hopes that the set
goals can be met at least partially.
Project page,
project proposal
- syslogd: Improve syslogd
Student: Martin Schütte
The project aims at implementing the upcoming IETF standards
for syslog transport over TLS (instead of UDP), a more formal
format of the messages themselv for easier automatic parsing,
and signing of messages to assert authentication, integrity and
correct sequencing of syslog messages. The first part of this
is already working, the second part is development. We're
looking forward to see this project succeed, as it will be of
benefit not only to NetBSD.
Project page,
project proposal
So much for now. We wish all our students good luck in the second part
of this year's Google Summer of Code, and are looking forward to see
your final results, which are due in 3-4 weeks from now. Keep on
hacking!
Update:
Fixed a typo (thanks tron!), got an update on the ext3 project,
and added a link to the status report of the
cwrapper project, which I've missed (sorry!).
[Tags: atf, dvb, ext3, google-soc, hurd, lvm, pkgsrc, rump, subfile, sysinst, syslog, teredo, ukfs, usb, uvc, wscons, wstablet]
|
|
Tags: ,
2bsd,
34c3,
3com,
501c3,
64bit,
acl,
acls,
acm,
acorn,
acpi,
acpitz,
adobe,
adsense,
advocacy,
Advocacy,
advogato,
aes,
afs,
aiglx,
aio,
airport,
alereon,
alex,
alix,
alpha,
altq,
am64t,
amazon,
amd64,
anatomy,
ansible,
apache,
apm,
apple,
arkeia,
arla,
arm,
art,
Article,
Articles,
ascii,
asiabsdcon,
aslr,
asterisk,
asus,
atf,
ath,
atheros,
atmel,
audio,
audiocodes,
autoconf,
avocent,
avr32,
aws,
axigen,
azure,
backup,
balloon,
banners,
basename,
bash,
bc,
beaglebone,
benchmark,
bigip,
bind,
blackmouse,
bldgblog,
blog,
blogs,
blosxom,
bluetooth,
board,
bonjour,
books,
boot,
boot-z,
bootprops,
bozohttpd,
bs2000,
bsd,
bsdca,
bsdcan,
bsdcertification,
bsdcg,
bsdforen,
bsdfreak,
bsdmac,
bsdmagazine,
bsdnexus,
bsdnow,
bsdstats,
bsdtalk,
bsdtracker,
bug,
build.sh,
busybox,
buttons,
bzip,
c-jump,
c99,
cafepress,
calendar,
callweaver,
camera,
can,
candy,
capabilities,
card,
carp,
cars,
cauldron,
ccc,
ccd,
cd,
cddl,
cdrom,
cdrtools,
cebit,
centrino,
cephes,
cert,
certification,
cfs,
cgd,
cgf,
checkpointing,
china,
christos,
cisco,
cloud,
clt,
cobalt,
coccinelle,
codian,
colossus,
common-criteria,
community,
compat,
compiz,
compsci,
concept04,
config,
console,
contest,
copyright,
core,
cortina,
coverity,
cpu,
cradlepoint,
cray,
crosscompile,
crunchgen,
cryptography,
csh,
cu,
cuneiform,
curses,
curtain,
cuwin,
cvs,
cvs-digest,
cvsup,
cygwin,
daemon,
daemonforums,
daimer,
danger,
darwin,
data,
date,
dd,
debian,
debugging,
dell,
desktop,
devd,
devfs,
devotionalia,
df,
dfd_keeper,
dhcp,
dhcpcd,
dhcpd,
dhs,
diezeit,
digest,
digests,
dilbert,
dirhash,
disklabel,
distcc,
dmesg,
Docs,
Documentation,
donations,
draco,
dracopkg,
dragonflybsd,
dreamcast,
dri,
driver,
drivers,
drm,
dsl,
dst,
dtrace,
dvb,
ec2,
eclipse,
eeepc,
eeepca,
ehci,
ehsm,
eifel,
elf,
em64t,
Embedded,
embedded,
emips,
emulate,
encoding,
envsys,
eol,
espresso,
etcupdate,
etherip,
euca2ools,
eucalyptus,
eurobsdcon,
eurosys,
Events,
exascale,
ext3,
f5,
facebook,
falken,
fan,
faq,
fatbinary,
features,
fefe,
ffs,
filesystem,
fileysstem,
firefox,
firewire,
fireworks,
flag,
flash,
flashsucks,
flickr,
flyer,
fmslabs,
force10,
fortunes,
fosdem,
fpga,
freebsd,
freedarwin,
freescale,
freex,
freshbsd,
friendlyAam,
friendlyarm,
fritzbox,
froscamp,
fsck,
fss,
fstat,
ftp,
ftpd,
fujitsu,
fun,
fundraising,
funds,
funny,
fuse,
fusion,
g4u,
g5,
galaxy,
games,
gcc,
gdb,
gentoo,
geode,
getty,
gimstix,
git,
gnome,
google,
google-soc,
googlecomputeengine,
gpio,
gpl,
gprs,
gracetech,
gre,
groff,
groupwise,
growfs,
grub,
gumstix,
guug,
gzip,
hackathon,
hackbench,
hal,
hanoi,
happabsd,
hardware,
Hardware,
haze,
hdaudio,
heat,
heimdal,
hf6to4,
hfblog,
hfs,
history,
hosting,
hotplug,
hp,
hp700,
hpcarm,
hpcsh,
hpux,
html,
httpd,
hubertf,
hurd,
i18n,
i386,
i386pkg,
ia64,
ian,
ibm,
ids,
ieee,
ifwatchd,
igd,
iij,
image,
images,
imx233,
imx7,
information,
init,
initrd,
install,
intel,
interix,
internet2,
interview,
interviews,
io,
ioccc,
iostat,
ipbt,
ipfilter,
ipmi,
ipplug,
ipsec,
ipv6,
irbsd,
irc,
irix,
iscsi,
isdn,
iso,
isp,
itojun,
jail,
jails,
japanese,
java,
javascript,
jetson,
jibbed,
jihbed,
jobs,
jokes,
journaling,
kame,
kauth,
kde,
kerberos,
kergis,
kernel,
keyboardcolemak,
kirkwood,
kitt,
kmod,
kolab,
kvm,
kylin,
l10n,
landisk,
laptop,
laptops,
law,
ld.so,
ldap,
lehmanns,
lenovo,
lfs,
libc,
license,
licensing,
linkedin,
links,
linksys,
linux,
linuxtag,
live-cd,
lkm,
localtime,
locate.updatedb,
logfile,
logging,
logo,
logos,
lom,
lte,
lvm,
m68k,
macmini,
macppc,
macromedia,
magicmouse,
mahesha,
mail,
makefs,
malo,
mame,
manpages,
marvell,
matlab,
maus,
max3232,
mbr95,
mbuf,
mca,
mdns,
mediant,
mediapack,
meetbsd,
mercedesbenz,
mercurial,
mesh,
meshcube,
mfs,
mhonarc,
microkernel,
microsoft,
midi,
mini2440,
miniroot,
minix,
mips,
mirbsd,
missile,
mit,
mixer,
mobile-ip,
modula3,
modules,
money,
mouse,
mp3,
mpls,
mprotect,
mtftp,
mult,
multics,
multilib,
multimedia,
music,
mysql,
named,
nas,
nasa,
nat,
ncode,
ncq,
ndis,
nec,
nemo,
neo1973,
netbook,
netboot,
netbsd,
netbsd.se,
nethack,
nethence,
netksb,
netstat,
netwalker,
networking,
neutrino,
nforce,
nfs,
nis,
npf,
npwr,
nroff,
nslu2,
nspluginwrapper,
ntfs-3f,
ntp,
nullfs,
numa,
nvi,
nvidia,
nycbsdcon,
office,
ofppc,
ohloh,
olimex,
olinuxino,
olpc,
onetbsd,
openat,
openbgpd,
openblocks,
openbsd,
opencrypto,
opendarwin,
opengrok,
openmoko,
openoffice,
openpam,
openrisk,
opensolaris,
openssl,
or1k,
oracle,
oreilly,
oscon,
osf1,
osjb,
paas,
packages,
pad,
pae,
pam,
pan,
panasonic,
parallels,
pascal,
patch,
patents,
pax,
paypal,
pc532,
pc98,
pcc,
pci,
pdf,
pegasos,
penguin,
performance,
pexpect,
pf,
pfsync,
pgx32,
php,
pie,
pike,
pinderkent,
pkg_install,
pkg_select,
pkgin,
pkglint,
pkgmanager,
pkgsrc,
pkgsrc.se,
pkgsrcCon,
pkgsrccon,
Platforms,
plathome,
pleiades,
pocketsan,
podcast,
pofacs,
politics,
polls,
polybsd,
portability,
posix,
postinstall,
power3,
powernow,
powerpc,
powerpf,
pppoe,
precedence,
preemption,
prep,
presentations,
prezi,
Products,
products,
proplib,
protectdrive,
proxy,
ps,
ps3,
psp,
psrset,
pthread,
ptp,
ptyfs,
Publications,
puffs,
puredarwin,
pxe,
qemu,
qnx,
qos,
qt,
quality-management,
quine,
quote,
quotes,
r-project,
ra5370,
radio,
radiotap,
raid,
raidframe,
rants,
raptor,
raq,
raspberrypi,
rc.d,
readahead,
realtime,
record,
refuse,
reiserfs,
Release,
releases,
Releases,
releng,
reports,
resize,
restore,
ricoh,
rijndael,
rip,
riscos,
rng,
roadmap,
robopkg,
robot,
robots,
roff,
rootserver,
rotfl,
rox,
rs323,
rs6k,
rss,
ruby,
rump,
rzip,
sa,
safenet,
san,
sata,
savin,
sbsd,
scampi,
scheduler,
scheduling,
schmonz,
sco,
screen,
script,
sdf,
sdtemp,
secmodel,
Security,
security,
sed,
segvguard,
seil,
sendmail,
serial,
serveraptor,
sfu,
sge,
sgi,
sgimips,
sh,
sha2,
shark,
sharp,
shisa,
shutdown,
sidekick,
size,
slackware,
slashdot,
slides,
slit,
smbus,
smp,
sockstat,
soekris,
softdep,
softlayer,
software,
solaris,
sony,
sound,
source,
source-changes,
spanish,
sparc,
sparc64,
spider,
spreadshirt,
spz,
squid,
ssh,
sshfs,
ssp,
statistics,
stereostream,
stickers,
storage,
stty,
studybsd,
subfile,
sudbury,
sudo,
summit,
sun,
sun2,
sun3,
sunfire,
sunpci,
support,
sus,
suse,
sushi,
susv3,
svn,
swcrypto,
symlinks,
sysbench,
sysctl,
sysinst,
sysjail,
syslog,
syspkg,
systat,
systrace,
sysupdate,
t-shirt,
tabs,
talks,
tanenbaum,
tape,
tcp,
tcp/ip,
tcpdrop,
tcpmux,
tcsh,
teamasa,
tegra,
teredo,
termcap,
terminfo,
testdrive,
testing,
tetris,
tex,
TeXlive,
thecus,
theopengroup,
thin-client,
thinkgeek,
thorpej,
threads,
time,
time_t,
timecounters,
tip,
tk1,
tme,
tmp,
tmpfs,
tnf,
toaster,
todo,
toolchain,
top,
torvalds,
toshiba,
touchpanel,
training,
translation,
tso,
tty,
ttyrec,
tulip,
tun,
tuning,
uboot,
ucom,
udf,
ufs,
ukfs,
ums,
unetbootin,
unicos,
unix,
updating,
upnp,
uptime,
usb,
usenix,
useradd,
userconf,
userfriendly,
usermode,
usl,
utc,
utf8,
uucp,
uvc,
uvm,
valgrind,
vax,
vcfe,
vcr,
veriexec,
vesa,
video,
videos,
virtex,
virtualization,
vm,
vmware,
vnd,
vobb,
voip,
voltalinux,
vpn,
vpnc,
vulab,
w-zero3,
wallpaper,
wapbl,
wargames,
wasabi,
webcam,
webfwlog,
wedges,
wgt624v3,
wiki,
willcom,
wimax,
window,
windows,
winmodem,
wireless,
wizd,
wlan,
wordle,
wpa,
wscons,
wstablet,
X,
x.org,
x11,
x2apic,
xbox,
xcast,
xen,
Xen,
xfree,
xfs,
xgalaxy,
xilinx,
xkcd,
xlockmore,
xmms,
xmp,
xorg,
xscale,
youos,
youtube,
zaurus,
zdump,
zfs,
zlib
'nuff.
Grab the RSS-feed,
index,
or go back to my regular NetBSD page
Disclaimer: All opinion expressed here is purely my own.
No responsibility is taken for anything.