Ion

lp:~jkakar/ion/avoid-name-collisions

Created by Jamu Kakar and last modified
Get this branch:
bzr branch lp:~jkakar/ion/avoid-name-collisions
Only Jamu Kakar can upload to this branch. If you are Jamu Kakar please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Jamu Kakar
Project:
Ion
Status:
Merged

Recent revisions

32. By Jamu Kakar

- A hack to #define CHAR_BIT 8 is gone. It was required because of
  a name collision between ion's limits.h and the builtin limits.h
  header files.

31. By Jamu Kakar

- The double-quote variant of #include is used with full projects
  path in ion to avoid name collisions.

30. By Jamu Kakar

Merged deferred [f=308389]

The new ion::defer module contains an implementation of Twisted's
Deferred synchronization mechanism. A Deferred is a promise of a
signal to come: it's returned by functions that don't produce
results right away, to avoid blocking. Callers attach callbacks
that are invoked when the call succeeds and when it fails.
Asynchronous programming is built atop this synchronization
mechanism. A Failure implementation is included and used when
errbacks are fired and during error handling within a callback
pipeline.

29. By Jamu Kakar

Merged test-registry [f=65598].

The ion::unittest module has been significantly reworked. Google
Test-inspired test definition makes creating tests very easy. The
test runner has been improved to produce coloured output with timing
data and better presentation of failures and errors.

Exception tests have been removed until a good way to handle
templated tests is developed. The format DateTime test has also
been disabled because it segfaults when run in sorted order. Both
of these issues should be addressed in follow-on branches.

28. By Jamu Kakar

- Reverted incorrect change to test.

27. By Jamu Kakar

Merged datetime [f=58948]

A new ion/datetime module contains DateTime and TimeDelta classes.
The classes are very similar to the classes with the same names in
the Python standard library. They currently operate with local
times and are unaware of timezones.

26. By Jamu Kakar

Merged better-formatting [f=260583]

The code formatting style has been updated to be more compact with
regards to braces and line breaks. Opening braces are now on the
same line as the statement that opens them. Branch keywords such as
'else' and 'catch' are placed on the same line as the closing brace
from the block above.

25. By Jamu Kakar

Merged better-callbacks [f=197479]

The callback tests have been completely written and now cover at least
the basic use of callbacks taking none to six parameters. A couple of
bugs with the four parameters callbacks were fixed. A new doubles
module has been added to ion:tests and contains the Counter helper
used by memory tests and a new Callable helper used by the tests for
MethodCallback<>.

24. By Jamu Kakar

Merged reorganize-everything [f=197450]

The name of the library has been changed from 'framework' to 'ion',
which is short for Inter-Object Networking Library. Only the most
basic code from framework has been ported to ion: exceptions,
debugging code, callbacks, conversion code, numeric limits, memory
management code, introspection code and the unittest framework. The
code has been rearranged into components, with related classes grouped
together into unified .h and .cpp files. For the time being the
remnants of the framework code are still available; however, they are
unsupported and no longer integrated into the build environment.

23. By Jamu Kakar

Merged traceback.

The old StackTrace class has been replaced by a new Traceback one.
Traceback offers a better interface, including the ability to iterate
StackFrame objects which contain filename, function name, function
offset and return address data for each frame in the traceback.

Branch metadata

Branch format:
Branch format 6
Repository format:
Bazaar pack repository format 1 (needs bzr 0.92)
This branch contains Public information 
Everyone can see this information.

Subscribers