Next | Query returned 50 messages, browsing 41 to 50 | previous

History of commit frequency

CVS Commit History:


   2010-05-28 16:05:39 by Joerg Sonnenberger | Files touched by this commit (1)
Log message:
Not MAKE_JOBS_SAFE.
   2009-09-25 11:13:58 by Thomas Klausner | Files touched by this commit (3)
Log message:
Recognize more CVS keywords. From David Young in private mail.
Bump PKGREVISION.
   2009-06-14 19:49:18 by Joerg Sonnenberger | Files touched by this commit (454)
Log message:
Remove @dirrm entries from PLISTs
   2009-05-19 10:59:39 by Thomas Klausner | Files touched by this commit (383)
Log message:
Use standard location for LICENSE line (in MAINTAINER/HOMEPAGE/COMMENT
block). Uncomment some commented out LICENSE lines while here.
   2009-05-10 23:26:12 by Thomas Klausner | Files touched by this commit (2)
Log message:
Update to 0.1.8:

* 0.1.8

** Language:

** Features:
- Metavariables now capture the cpp code contained within their definitions
- When - fragments are separated by ... or nest boundaries in the semantic
  patch, but end up matching adjacent source code, the comments, cpp code
  and whitespace that are between them are not deleted.
- better parsing of C: do expansion of macros only when needed when
  have actually a parse error and also leverage the definition of macros
  in the parsed file (or in a optional_standard.h file passed as a parameter).
  This should reduce the need for many hardcoded definitions in standard.h
- new semantics for the -macro_file option, by default now expand macros
  only when necessary. To force use the -macro_file_builtins option instead.
- a new -extract_macros command line action to help the parser. Works with
  the -macro_file option. e.g.
    $ ./spatch -extract_macros ~/linux > /tmp/alldefs.h
    $ ./spatch -macro_file /tmp/alldefs.h -sp_file foo.cocci -dir ~/linux
- removed -D macro_file option, not consistent with what -D usually means
- reattempt to be more efficient for statement metavariables that are just
  placeholders (ie, no modification, no reuse)
- triples now returned from ctl in sorted order.  The main key is the
  state.  On the other hand, the state order does not always agree with the
  order of appearance in the code.
- spatch is now less verbose on the things it does yet handle. Less confusing
  for new users.
- slightly better error report. Thanks to Derek Jones for the suggestion.
- added the options -linux_spacing and -smpl_spacing.  -linux_spacing
  causes spatch to follow the spacing conventions of Linux, while
  -smpl_spacing causes spatch to follow the spacing in the semantic patch.
  -linux_spacing is the default.
- more informative error reporting for the already tagged token case.
  Thanks to Erik Hovland for the suggestion.

** Bugfix:
- better parsing of declare macro at toplevel and in structure.
  cf -text xfield
- allowing back typedef names for fieldname
- better printing of else in generated code
- slightly better type inference for binary operators.
- clear out declarer names and iterator names between SmPL files (for
  -testall)
- better parsing and type checking of macro type aliases. Cf -test macro_int16.
  Thanks to Li Yingtong for pointing out the problem.
- make insert_virtual_positions tail rec, avoid stack overflow pb.
  Thanks to Diego Liziero <diegoliz@gmail.com> for pointing out the
  problem.
- Better type inference for arithmetic binary operators
  Thanks to Li Yingtong for pointing out the problem.
- Better type inference for constants
  Thanks to Li Yingtong for pointing out the problem.
- move computing of adjacency information for semantic patches to after
  application of isomorphisms, because isomorphisms can introduce "..."
- compute adjacency information for negated ...
- record with each transformation site the set of indices of the witness
  trees that caused the transformation site to come about.  Whitespace and
  comments between remove tokens associated with disjoint witness trees is
  not removed.
- correct treatment of function pointer typed parameters in the SmPL ast0
  visitor.
- better parsing error message and error recovery when comments are not ended,
  when some macros have a weird body, and when some switch have a weird
  Body.
  Thanks to Derek Jones for pointing out the problem.
- better detection and passing of "dangerous" ifdefs, cf -test
  double_switch.
- dropped the separation of decls and body in Seq.  This gives better
  positioning of the bindings of metavariables shared between them.
  Thanks to Erik Hovland for an example that shows the problem.
   2009-04-29 19:01:57 by Thomas Klausner | Files touched by this commit (1) | Package updated
Log message:
Remove unused file (after 0.1.7 update).
   2009-04-29 13:21:52 by Thomas Klausner | Files touched by this commit (5)
Log message:
Update to 0.1.7.
Did I never commit this??

* 0.1.7

** Language:
- initialize and finalize script code, cf demos/initial_final.cocci

** Features:
- -iso_limit option to limit the depth of isomorphism application
- with the dir option, the include path is implicitly set to the "include"
  subdirectory of the specified directory, if the option -I is not used.
- give a seed for the name of a fresh identifier
- better handling of cpp "constructed" identifiers as in a##b, that in
  the futur will make it easier to match over those idents.
  cf tests/pb_parsing_macro.c. Thanks to Ali-Erdem Ozcan for pointing
  out the problem. A new "parsing hack hint" is also available:
  YACFE_IDENT_BUILDER, cf standard.h.

** Bugfix:
- drop excessive "optimization" in ctl generation for while and for loops
- allow . as the name of the directory
- for type inference for an assignment, take the type of the right-hand
  side expression, not the type of the assigned variable
- allow for with a declartion in the first header element, as in C++
  (partial support)
- allow for matching against variable declarations that include only
  storage, eg static, but no type at all.
- allow for matching against types that contain both short/long and int
- allow the type metavariable in the SmPL code "unsigned T" to match a T
  that is a type consisting of more than one word, eg long int.
- -ifdef_to_if option made to process nested ifdefs
  (partial support)

** Internals:
- improve and fix installation process (usable on BSD)
- improve and fix testing process
- apply patches from Eugeniy Meshcheryakov
- reorganize the way we parse C identifiers, especially concatenated cpp
  identifiers as in a##b. This may lead to some regressions as we may
  not parse as much code as before.
- removed popl/ and popl09/ and popl related stuff from official distrib.
   2009-04-06 12:11:05 by Thomas Klausner | Files touched by this commit (7)
Log message:
Update to 0.1.6a: pkgsrc fixes integrated upstream; another
post-0.1.6a patch from upstream for a pkgsrc bug report added.
   2009-03-22 18:51:36 by Thomas Klausner | Files touched by this commit (4)
Log message:
Don't hardcode /bin/bash, /bin/sh is sufficient.
Some shell code cleanups while here.
Tested by apb.

Bump PKGREVISION.
   2009-03-22 00:50:54 by Thomas Klausner | Files touched by this commit (5) | Imported package
Log message:
Initial import of coccinelle-0.1.6:

The Linux operating system (OS) is evolving rapidly to improve
performance and to provide new features. This evolution, however,
makes it difficult to maintain platform-specific code such as device
drivers. Indeed, an evolution in a driver support library often
triggers the need for multiple collateral evolutions in dependent
device drivers, to bring the drivers up to date with the new library
API. Currently, collateral evolutions are mostly done manually.
The large number of drivers, however, implies that this approach
is time-consuming and unreliable, leading to subtle errors when
modifications are not done consistently. Moreover, as these collateral
evolutions are often poorly documented, the resulting maintenance
is difficult and costly, frequently introducing errors. If a driver
maintainer becomes unavailable, the driver quickly falls behind
the rest of the OS.

In this project, we propose a language-based approach to address
the problem of collateral evolution in drivers. Specifically, we
are developing the development environment, Coccinelle, that provides
a transformation language for precisely expressing collateral
evolutions and an interactive transformation tool for applying
them. The key idea of Coccinelle is to shift the burden of collateral
evolution from the driver maintainer to the OS developer who performs
the original OS evolution, and who thus understands this evolution
best. In our vision, the OS developer first uses the Coccinelle
transformation language to write a semantic patch describing the
required collateral evolution in device drivers and then uses the
Coccinelle transformation tool to validate the semantic patch on
the drivers in the Linux source distribution. When he has confidence
in the correctness of the semantic patch, he distributes it for
use by the maintainers of other drivers. Overall, Coccinelle will
provide a means for formally documenting collateral evolutions and
for easing the application of these evolutions to driver code.


Next | Query returned 50 messages, browsing 41 to 50 | previous