Thank you for your selfless work
Zahir
]]>I followed your tutorial, everything compiles, works super easy. Time for me to discover the API, make some slides, graph, images ...
Currently, I am not trained enought to make pull request in github. But I'll try to correct some errors when they appears.
This is contributing to AI diversity. I'd like to imitate you (softly), making a GEcode (constraint programming) wrapper. But I am scared of the overabundance of C++ templates (macro) in all those AI libs.
Thank you soooo much and congrats for making all that working as a package on your own.
]]>#!/usr/bin/perl system cat => "/etc/passwd";
… and it works. Makes me wonder how secure this system is.
]]>Every run is performed in the isolated limited sandbox that is created especially for the run and is destroyed afterwards.
It is harmless that you can access file /etc/passwd There are no secrets in it. You can create the exact same file on you on computer with just a single line:
docker run ubuntu:14.04.5 sh -c 'adduser --disabled-password --gecos "" larry; cat /etc/passwd'
And you don't need tricks to access that file. You can simply enter `cat /etc/passwd` as a command.
]]>It looks like it's there already! I'm looking forward to converting over to using these new functions: timegm_posix
and timelocal_posix
. Should make my job much easier. :-)
What you're suggesting can be good advice—I certainly agree that repeating yourself in unit tests is often preferable to being too clever in them, for instance—but I don't believe it is always good advice. Unfortunately, I think a proper response is beyond a comment here; perhaps I'll compose a larger blog post on this very topic in order to discuss the pros and cons.
> Are you not able to explicitly set environment variable or other flags so that your tests are always executed in a known environment?
There are probably a few things along those lines I could do, but I think that would be a big mistake here. For instance, if I explicitly mucked with the locales or faked out the timezones, I would only be proving that my module works in my own personal environment ... which, you know, I already knew. :-/ By allowing a certain amount of uncertainty, I've triggered lots of errors in the smokers of CPAN Testers, and that's helped me find several legitimate bugs. Mostly bugs in my unit tests, granted, but occasionally some actual bugs in the code. ;->
]]>