Releases: CopernicaMarketingSoftware/SMART-TPL
Releases · CopernicaMarketingSoftware/SMART-TPL
SMART-TPL 0.10.2
- Add extra constructor to buffer class (can now be constructed with just a const char *)
- Add missing override
- Update list of supported openssl versions
- Fix crash when variantvalue was constructed with (const char *)nullptr
- Fix automatic dependencies
SMART-TPL 0.10.1
- Build in types now resolve to boolean just like in Smarty, true if not empty
- Implemented a boolean negation operator, allow you to negate boolean results
SMART-TPL 0.10
- Vectors now have a working key() implementation which will return the current item (0-indexed)
- Added a simple range modifier allowing you to select a certain range from a vector or map
- Buffer will now cast to a const std::string& instead of a const std::string
- Added sonames
SMART-TPL 0.9.7
- You can now tell if the template depends on outside data (personalized) or not
- Both MapValue and VectorValue now have default constructors, meaning you can construct them without an std::map or std::vector
SMART-TPL 0.9.6
We no longer link against openssl, instead we dynamically open the openssl libraries
SMART-TPL 0.9.5
This release only focuses on error reporting, besides that nothing changed. To summarize, the following changes got implemented.
- Introduction of CompileError and RuntimeError classes, these both inherit std::runtime_error
- Instead of using std::runtime_error everywhere, we're now using CompileError and RuntimeError
- Internally support for 'throwing' runtime errors with a message from jitted code was added
SMART-TPL 0.9.4
This release brings some safe guards and fixes some not correctly working features.
- Fixed undefined behavior in the ucfirst modifier
- You can now use modifiers which return booleans or numbers in if statements (strings not yet supported)
- A static library is now also generated
- SmartTpl::Template no longer holds the source, therefore the source() method got removed
- SmartTpl::Buffer can now be cast to a string and can be assigned to
SMART-TPL 0.9.3
Another minor release with a few bug fixes and quite some new convenient methods.
- MapValue now has an insert method which allows you to still modify the actual map
- NumericValue now accepts int16_t as well
- Template move constructor now actually moves _source as well
- VariantValue now has assign operators
- Added an empty and strlen modifier
- Refactored the way the internal Parameters is created
- Optimized the way c code is generated
- Literal strings can now be used as numbers
SMART-TPL 0.9.2
VariantValue will now be able to hold instances of your own custom Value objects. And we got rid of the dependency on our VARIANT-CPP library.
SMART-TPL 0.9.1
You can now copy the Data object. You can retrieve the original source of a Template and some internals have been slightly improved.