- Removed `COMMON_ERRORS.md` file to streamline documentation. - Added `Flask-Limiter` for rate limiting and `redis` for session management in `requirements.txt`. - Expanded `ROADMAP.md` to include completed security features and planned enhancements for version 2.2. - Enhanced `setup_myp.sh` for ultra-secure kiosk installation, including system hardening and security configurations. - Updated `app.py` to integrate CSRF protection and improved logging setup. - Refactored user model to include username and active status for better user management. - Improved job scheduler with uptime tracking and task management features. - Updated various templates for a more cohesive user interface and experience.
1.4 KiB
1.4 KiB
isexe
Minimal module to check if a file is executable, and a normal file.
Uses fs.stat
and tests against the PATHEXT
environment variable on
Windows.
USAGE
var isexe = require('isexe')
isexe('some-file-name', function (err, isExe) {
if (err) {
console.error('probably file does not exist or something', err)
} else if (isExe) {
console.error('this thing can be run')
} else {
console.error('cannot be run')
}
})
// same thing but synchronous, throws errors
var isExe = isexe.sync('some-file-name')
// treat errors as just "not executable"
isexe('maybe-missing-file', { ignoreErrors: true }, callback)
var isExe = isexe.sync('maybe-missing-file', { ignoreErrors: true })
API
isexe(path, [options], [callback])
Check if the path is executable. If no callback provided, and a
global Promise
object is available, then a Promise will be returned.
Will raise whatever errors may be raised by fs.stat
, unless
options.ignoreErrors
is set to true.
isexe.sync(path, [options])
Same as isexe
but returns the value and throws any errors raised.
Options
ignoreErrors
Treat all errors as "no, this is not executable", but don't raise them.uid
Number to use as the user idgid
Number to use as the group idpathExt
List of path extensions to use instead ofPATHEXT
environment variable on Windows.