aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
AgeCommit message (Collapse)Author
2010-05-01Cache fixes.Mike Buland
2010-05-01The cache...Mike Buland
2010-04-30Many minor fixes to the caching system, membuf, and others, but mainly someMike Buland
important fixes for real-life use of the system.
2010-04-27The Bu::Ito thread class has changed the rules on the run function. It noMike Buland
longer returns anything, that's fine, it's in a class, but it also is protected now. That doesn't really effect child classes much, they can make run public, but I reccomend protected to avoid confusion.
2010-04-23Minor updates to the List class, unchecked corner cases.Mike Buland
The CsvWriter now writes csv. It understands both excel formatting and c-style, which I made up myself (it's just c-style escape sequences). Sha1 is converted to work with the CryptoHash API and it does indeed work.
2010-04-19Nevermind about the Myriad bug. It was really obvious, I was accidentallyMike Buland
adding all pre-allocated blocks to the header stream instead of just allocating them. This caused some oddness, as you can probably imagine. There's a good way to go before Myriad is as cool as it could be, but it's already much more efficient and all around better than nids. I'll have to write a program to convert nids cache stores to myriad cache stores, but that should be fairly minor.
2010-04-19CacheStoreMyriad is written, it's pretty much a copy of CacheStoreNids sinceMike Buland
Nids and Myriad pretty much share an API. However, there seems to be a bug in Myriad when a Myriad file is created and filled with data immediately, the header stream is mis-linking one of the blocks again.
2010-04-12Wow Myriad!!Mike Buland
Myriad seems to work. I have to run it through a few more paces, and there are some known corner cases that I may just disallow, such as too-small block sizes. Beyond a little more testing, it's ready for production. I may switch some of my cache tests to using it now.
2010-04-12Myriad is getting pretty close, just have to finish the writing code andMike Buland
probably tweak the header init.
2010-04-07Corrected a long standing yet seldom witnessed hash bug. It was triggered whenMike Buland
a hashtable was filled, then some items were removed, then enough items were added to trigger a rehash.
2010-04-07Cache updates, mainly helper typedefs to make it easier to work with a cacheMike Buland
without knowing everything about it's keytype and whatnot. Minor fixes to the csv end-of-line handling.
2010-03-31Removed the bool cast operator from FBasicString. It turns out it was causingMike Buland
way, way, way more problems than it solved. A number of libbu++ tests were inacurate because of it, there were problems in several other programs, and there may be more that have problems we haven't found yet because of this. This will most likely cause complitaion errors, especially in places we didn't expect, where strings were being stored into or passed as integers and the like. In cases where you were just testing a string, just call the "isSet()" function, which is functionally equivellent to the old bool cast operator.
2010-03-15Ito is updated and is more posix compliant.Mike Buland
2010-03-12The server and multiserver now support a shutdown() function which callsMike Buland
onCloseConnection on each client before cleaning it up, allowing for smooth cleanup. Later we may want to add a nicer version with a timeout for pending data to be transmitted and the like. This one is pretty harsh.
2010-03-08Server socket has a few tweaks now.Mike Buland
2010-03-03I think I just changed whitespace...Mike Buland
2010-03-01The CSV Reader now handles multiple comma characters in sequence without spacesMike Buland
correctly.
2010-02-13Added and updated the license info in all the source files, they still saidMike Buland
copyright 2007-2008.
2010-02-13What the HELL was I thinking? Apparently ItoAtom was never used, and it's soMike Buland
handy too... It wasn't in the right namespace, it was broken, it had pieces that were misnamed...bleh...anyway, it complies and works now.
2010-02-12Well, it compiles. I think I may make newline inherit from buffer, I dunno...Mike Buland
2010-02-11Started working on a CSV reader, it's pretty much done, the CSV writer is justMike Buland
a shell, but I may finish it soon, and started work on NewLine, a filter that converts newlines in text streams between the different OS standards. Also added some more helper operators to fbasicstring.
2010-02-10Changed the name of nids to Myriad, I like it, but I'm not getting rid of nidsMike Buland
until I can safely migrate to Myriad.
2010-02-04david - Made a build-M3 file for building to windows (mingw). This one ↵David
actually builds *.cpp, yay!... Although i took out Process, Plugger, and Regex... to be re-added later... also had to stubify a few more functions when compiling on WIN32.
2010-01-28Hmmm, the newline wasn't causing a flush, that's just silly, I should knowMike Buland
better.
2010-01-25I had thought that I had done this ages ago. __cacheGetKey now has a generalMike Buland
template definition that just calls getKey() in the object, if the object doesn't support a getKey() method, then you can write your own, but now you don't have to.
2010-01-25The order of key, object in all of the cache related systems has beed fixed,Mike Buland
key just belongs first, that's all there is to it.
2010-01-22Ok, I'm officially waging war on ParamProc. When enough programs have switchedMike Buland
to OptParser I'm deleting it, it's stupid and ugly and I hate it! Ok, maybe not quite that bad, but OptParser is much better. I've marked ParamProc deprecated, many programs will start giving out warnings about that.
2010-01-15Documented more of MiniCron, and added some cool new help features to OptParser.Mike Buland
2010-01-14Created the minicron system. This is a cute little cron like implementationMike Buland
that allows a program to signal slots on a schedule, possibly a dynamic schedule.
2010-01-07A bunch of things weren't including their own files in quite the correct way...Mike Buland
2010-01-07Added a new class, RegEx, it does extended regular expressions for now, more toMike Buland
come.
2010-01-07Added a function that really should have always been in FString...Mike Buland
2010-01-05Really minor tweaks, shouldn't effect anything that we have right now, really.Mike Buland
2009-12-21Added a trimBack fonction to FBasicString that removes all occurances of onceMike Buland
char from the back of the string.
2009-12-21Ok, Process has been updated. You now must specify flags as the first parameterMike Buland
of both constructors, this allows you to control which streams to bind to. To preserve the old behaviour, simply put Bu::Process::StdOut before your old first parameters.
2009-12-19Added a couple helpers, peekPop(), and an addition operator.Mike Buland
2009-12-18Ok...sweet, the OptParser now supports everything the old one did, but in muchMike Buland
less code, and it does everything with more style and panache, also fewer bugs.
2009-12-18Wow, cool, Bu::Formatter can read all the basic types now, (int, float, bool,Mike Buland
char, etc.) and OptParser totally works. I have one last change to make to it, which is using the return value of signal type options to determine weather or not the option took a parameter at all, especially in the case of short options.
2009-12-18The OptParser still needs help banners and more helper functions, but otherwise,Mike Buland
it's done. It works great, and provides much flexibility and usefulness. It now relies on the input side of the Formatter class, which at the moment supports reading strings...not real useful yet... Next up, adding readers for numbers and such, then it'll be mostly complete. Also, fixed a bug when copying uninitialized signal objects.
2009-12-16Signals is even safer and works even better. Also, OptParser is nearly done.Mike Buland
Now I just have to come up with a way to modify data that you already have, that sure was a nice feature of the old one, even if it was implemented in a silly way.
2009-12-16Signals are now not only typesafe, but also will throw an exception if you tryMike Buland
to construct a slot with a null pointer, or call a signal that has not been set yet. Also, signals can be checked for being set, and assigned to one another.
2009-12-16The new signal/slots system is in place, and works from 0-5 parameters rightMike Buland
now, I'll probably add more later on... I've also started on the replacement for ParamProc, OptParser. It should do everything that ParamProc did, only with less code, and much better.
2009-12-15Bugfix in Bu::FBasicString for null string comparisons.Mike Buland
2009-12-10Process is working much better, it actually follows the guidelines for most ofMike Buland
it's functions now, such as isEos and whotnot, although it won't work in non- blocking mode yet, and I'm still trying to figure out a good way to have it deal with both stdout and stderr.
2009-12-06I corrected a peculiar heap corner case that caused an infinite loop.Mike Buland
2009-12-06Hmmm, this is better, yeah, I don't think it'll effect anyone for now...Mike Buland
2009-12-01Getting closer with the pointer formatter...Mike Buland
2009-11-24Added a replace function to fstring...sweeet.Mike Buland
2009-11-18Hey, fixed the problems in heap. It should now work properly no matter what theMike Buland
data or order etc.
2009-11-12I've started my campaign to clean up all of the header files in libbu++ as farMike Buland
as includes go. This required a little bit of reworking as far as archive goes, but I've been planning on changing it aronud for a bit anyway. The final result here is that you may need to add some more includes in your own code, libbu++ doesn't include as many random things you didn't ask for anymore, most of these seem to be bu/hash.h, unistd.h, and time.h. Also, any Archive functions and operators should use ArchiveBase when they can instead of Archive, archivebase.h is a much lighterweight include that will be used everywhere in core that it can be, there are a few classes that actually want a specific archiver to be used, they will use it (such as the nids storage class). So far, except for adding header files, nothing has changed in functionality, and no other code changes should be required, although the above mentioned archive changeover is reccomended.