* added os:GetEnvironmentVariable to list all environs or get a single one
* first version of restarting the core to test save/load
added environment variable to filter tests
* fixed string constructor (size_t instead of signed int)
* added string_view constructor
* splitted and extended restart tests
* added docs
* added pol.cfg setting to disallow environment variable access
* Change environmental variable access rules
Instead of defaulting to all values allowed, now defaults to none. May
specify either `*` to allow all variables, or a comma-delimited list.
* Address review changes
- Use Clib lower instead of boost
- const auto references
- Separate tests for access and finding env vars
* Update documentation
* Apply suggestions from code review
Co-authored-by: Kevin Eady <8634912+KevinEady@users.noreply.github.com>
Co-authored-by: Fernando Rozenblit <rozenblit@gmail.com>
* Build on OSX
* Add macos-latest to build matrix
* Fix case sensitivity checks/tests
* On osx builds, cope with unpacking a double that might be followed by either an exponent or an error (as part of an array).
Also, remove static unpack(const char*) forms that were never called.
Co-authored-by: turleypol <turley@polserver.com>
sideeffects.
ConstString no more assumes tainted source, tus file loading now also
sanitizes data.
Removed duplicate usage of isValidUnicode, sanitize methods also test
it.
only once
renamed mklower/mkupper to make it clear that it should only be used
for pure ascii texts
compiler triggers only once a warning about invalid unicode file
* upstream/master: (45 commits)
renamed mobile syshook to character used unique_ptr for all syshooks
added docs
code simplification, deprecate warning for uoclient.cfg MethodScript entry
party and guild ref support docs and testing left?
custom methods for client and account references
fixed line length
syshooks for npc/mobiles
first round for scripted object class methods
Fixed formatting error.
Added new return option to consume ammunition hook which allows the hook to make the core continue with the usual ammunition checks.
Fix critical bug in FindObjtypeInContainer()
fixed compiler warning
fixed linesize
windows fixes
Added cmake option to run clang-tidy used everywhere nullptr
Changed classes to be final if possible, removed override macro
Added additional documentation.
next..
clang 7 is currently untrusted... next try 6 ;)
fixed new clang warnings, new compiler version on travis (lets see how many commits are needed till it works)
...
Conflicts:
.travis.yml
pol-core/bscript/impstr.h
pol-core/clib/cfgfile.cpp
pol-core/pol/module/npcmod.cpp
Authors are not forced to use the clang-format setting, but should
atleast be inspired by the style.
The only thing which is now not allowed are tabs for ident/alignment!
- obj.isLesserThan() and obj.ieEqual() are now replaced by < and ==
- Removed obsolete isLT(), isLE(), isGT(), isGE()
- Also implemented comparison operators for BObjectImp
- These operators may now be fully overriden in child classes
- Default implementations are derived from == and < operators
- As a general rule (that fit into "undefined" behavior":
-- Objects are == if having the same address
-- Objects are < based on their type ID, except of Error and Uninit
that always are < everything else.
-- Objects are supposed to implement their own < and fall back to
base class. If not implemented, as a last fallback, the object's
address in memory is used to do the comparison
- Added test case for comparison operators
str.length() : returns like len(str) the length of the string
str.upper() : returns like upper(str) the uppercase version and also modifies the str
str.lower() : returns like lower(str) the lowercase version and also modifies the str
str.find(Search,[Start]) : returns like Find(string, search, start) the index of the first occurance of 'search' after 'start' within str
but unlike the basic.em function the Start parameter is optional if not given it searches the whole string
str.join(array) : returns a string which is the concatenation of the array elements, seperated by str