Age | Commit message (Collapse) | Author |
|
goes into an infinite loop while doing certain kinds of read. Also, it zeros
out new blocks to make things easier to cope with in the hex editor, it'll
probably also compress better.
I also fixed Bu::MemBuf so that you can now write to arbitrary places
mid-stream.
|
|
|
|
What changed API-Wise:
- I deleted a constructor in Bu::File that shouldn't have been used anyway.
- I changed it from using fopen style mode strings to using libbu++ style
mode flags. Check the docs for the complete list, but basically instead of
"wb" you do Bu::File::Write, and so on, you can or any of the libbu++ flags
together. There is no binary/text mode, it just writes whatever you tell it
to verbatim (binary mode). Lots of extras are supported. Nothing else
should have changed (except now the file stream is unbuffered, like all the
other streams).
Sorry if this breaks anything, if it's too annoying, use the last revision for
a while longer.
|
|
exception related code that's been annoying me. You should no longer have to
include any exception header explicitly for normal operations, every class that
has it's own exception to throw defines it in it's own headers.
This may break some code that uses libbu++, but it's an easy fix, just delete
the include for exceptions.h. Sometime soon I would also like to move from
Bu::ExceptionBase to Bu::Exception, but that will affect a lot more code than
this change did.
|
|
ok, nids is still in flux, they'll be gone soon).
|
|
|
|
hell out of it. Good times, everyone. This is a major chunk for congo, and
the new optimizations should be good.
|
|
I wouldn't update to this just yet, if you have problems, back off a rev. I'm
trying to update the code to work on both 32bit, and 64bit systems, and
hopefully anything else that comes along.
Currently some of the archive code is broken, testing must be done on both
archetectures.
|
|
version of gcc complained about them, none of these changes will break backward
compatibility, so I fixed them.
I added more docs too, it seems.
|
|
it yet, the name will change. I really, really, really want the name to change.
|
|
fixed, and the Bu::ItoHeap is working and tested. Note that when multiple items
have the same sort order, they will come out in random order.
|
|
allocators for all work, every data type used in a Bu::Heap must support the
equals operator and <= or >=, or you need to write your own comparison functor.
The heap works as both a min-heap and max-heap, just change out the functor used
for camparison, kinda' cool.
The print function I'll leave in for a little while, but not in the long run, it
just prints a dot graph to stdout.
Next up, the Ito version.
|
|
I'm thinking the heap should add one layer to the binary tree each time it
grows, which means double+1 each time. The Bu::ItoHeap will be implemented as
soon as the rest of Bu::Heap is done.
Also, I finally added bu/util.h which is mainly handy template functions like
Bu::swap, Bu::min, Bu::max, and Bu::mid. A few more may be added.
|
|
|
|
It's backword compatible, and the new features are a lot of fun. Since it uses template functions you can add any new variable types to be formatted.
|
|
|
|
installed. That was odd. Anyway, also set props on the bu, unit, and test
directories so that the contents won't be listed on svn status.
|
|
effort.
|
|
the pipes properly, resulting in the child process going defunct and not dying,
it also wasn't buffering properly, it now collects as much data as it can before
returning from a read operation.
|
|
coming up...it's just like popen only cool and managed, and streamey.
|
|
compile error I introduced last commit.
|
|
|
|
comment block as a tag...oops.
|
|
of which use printf style formatting and accept the same parameters as printf.
|
|
brought back the formula class with some cool twists, and added a basic stack
class, very cute, fast, and little.
|
|
|
|
this with the Bu::Archive next. Basically, there's one generic template
function that will convert anything that can safely cast to a uint32_t and that
supports direct comparisson, and doesn't have it's own override already to be
a Hash key, such as char, uint8_t, uint64_t, etc.
The Telnet protocol handler does everything I need it too for now, next up for
it is escape sequence handling, it would be nice to make this general too, by
using the termcap database or something, but there is an ANSI/ISO standard now,
I may just go ahead and use that. Also, it looks like it'd be pretty easy to
make the canonical mode editing functions be pluggable to facilitate different
types of editing, but that can be done down the road as well.
|
|
the existing docs. Taking advantage of some of the cooler extra features of
doxygen I've started writing extra how-to pages covering working with sections
of the library. Also, I started grouping the classes by function so they show
up on the Modules page together, very cute.
|
|
very similarly to the Bu::Server class, except that every incoming connection
gets it's own thread. This functionality may have to be tuned later, to allow
for maintaining a pool of connections as an option, but this is fine for now.
|
|
(common in web addresses) was put in the middle of a property list, now it
doesn't get confused, it just complains bitterly and refuses to work.
|
|
compile under OSX. So far, no problems with anything else, it looks like build
and nango both build without problems, libbu++ is truly becoming a full cross-
platform toolkit.
|
|
|
|
|
|
|
|
some things, so here they are, after being manually copied.
|
|
now allows you to include extra printf formatting in your fields just like the
docs say you can.
|
|
comment blocks, and it retains the order of all nodes.
|
|
a decent replacement for multilog now that we use runit.
|
|
|
|
|
|
now when the end has been reached.
|
|
|
|
that could be in this, but it's going to be hard to tell...
|
|
has a lot more helper functions and the like, the filters give more info back
to the caller, minor updates to taf.
|
|
to compensate for overshooting the end of the compression block yet, which it won't
be able to do on streams that don't support seeking...I think I'll make it only
try on stop commands, and try to re-use the buffer otherwise...maybe...it's an
interesting problem since it *always* overshoots (unless you're really, really
lucky...)
|
|
had anticipated, and much cleaner. I'll have to add some documentation to it,
because it's not really obvious how any of it fits together from the outset,
although I have to say that the bzip2 test program is the easiest general bzip2
compression program I've ever made...it just goes :)
Decompression in Bu::BZip2 isn't finished yet, but that's ok, it's coming soon.
|
|
TafNode structures are immutable, it all looks really good. Saving should be a
snap, and the immutable part I'm not sure is bad...we'll see what happens.
Also, I'm contemplating looking into a way to add "named data structure" support
to the Archive at a lower level, then allow it to use a nameing system to apply
names to each data structure and then output to any backend that supports
naming, like taf, xml, etc.
|
|
working. Now you can load Taf structures and clean up, you just can't access
all of the data inside 100%.
|
|
Some more generalizations are in order, then we'll stuff the data somewhere.
|
|
with objects at the moment, still contemplating that one...
|