diff --git a/.gitignore b/.gitignore index 22e2d51..749990d 100644 --- a/.gitignore +++ b/.gitignore @@ -152,7 +152,6 @@ Desktop.ini *.egg *.egg-info dist -build eggs parts bin diff --git a/tools/WdfTracer_1.0.0.11.zip b/tools/WdfTracer_1.0.0.11.zip deleted file mode 100644 index cc43607..0000000 Binary files a/tools/WdfTracer_1.0.0.11.zip and /dev/null differ diff --git a/tools/build/README.md b/tools/build/README.md new file mode 100644 index 0000000..11fe286 --- /dev/null +++ b/tools/build/README.md @@ -0,0 +1,16 @@ +Build process +============= + +The Scavix Software Web Development Framework can be packed as PHAR. +Usage is simple, just replace the plain include with one referencing the PHAR: +```php +// old/normal style +require_once("/path/to/scavix-wdf/system.php"); + +// new/PHAR style +require('phar:///path/to/scavix-wdf.phar/system.php'); +``` + +This is done from within Visual Studio Code by pressing STRG+Shift+B (aka run the build task). + +Output will be placeed into the `tools` folder. \ No newline at end of file diff --git a/tools/build/build.php b/tools/build/build.php new file mode 100644 index 0000000..2745881 --- /dev/null +++ b/tools/build/build.php @@ -0,0 +1,41 @@ +current()->getPathname(),'.git') === false; + } +} + +@unlink("$dstPath/$pharname"); +$phar = new Phar("$dstPath/$pharname",0, "scavix-wdf.phar"); + +$objects = new RecursiveDirectoryIterator($srcRoot,FilesystemIterator::SKIP_DOTS); +$objects = new StripFilesFilter($objects); +$objects = new RecursiveIteratorIterator($objects); +$phar->buildFromIterator($objects,$srcRoot); +$phar->addFromString('VERSION',"$version\n$creation\n$branch"); +//$phar->addFile(__DIR__.'/stub-cli.php', 'stub-cli.php'); +$phar->setStub("#!/usr/bin/env php" .PHP_EOL.$phar->createDefaultStub('cli.php','')); diff --git a/tools/build/php.ini b/tools/build/php.ini new file mode 100644 index 0000000..92190a9 --- /dev/null +++ b/tools/build/php.ini @@ -0,0 +1,173 @@ +[PHP] +engine = On +short_open_tag = Off +asp_tags = Off +precision = 14 +output_buffering = 4096 +zlib.output_compression = Off +implicit_flush = Off +unserialize_callback_func = +serialize_precision = 17 +disable_functions = +disable_classes = +zend.enable_gc = On +expose_php = On +max_execution_time = 30 +max_input_time = 60 +memory_limit = 1G +error_reporting = E_ALL +display_errors = On +display_startup_errors = On +log_errors = On +log_errors_max_len = 1024 +ignore_repeated_errors = Off +ignore_repeated_source = Off +report_memleaks = On +html_errors = On +variables_order = "GPCS" +request_order = "GP" +register_argc_argv = Off +auto_globals_jit = On +post_max_size = 8M +auto_prepend_file = +auto_append_file = +default_mimetype = "text/html" +doc_root = +user_dir = +enable_dl = Off +file_uploads = On +upload_max_filesize = 2M +max_file_uploads = 20 +allow_url_fopen = On +allow_url_include = Off +default_socket_timeout = 60 +[CLI Server] +cli_server.color = On +[Date] +[filter] +[iconv] +[intl] +[sqlite] +[sqlite3] +[Pcre] +[Pdo] +[Pdo_mysql] +pdo_mysql.cache_size = 2000 +pdo_mysql.default_socket= +[Phar] +phar.readonly = 0 +[mail function] +SMTP = localhost +smtp_port = 25 +mail.add_x_header = On +[SQL] +sql.safe_mode = Off +[ODBC] +odbc.allow_persistent = On +odbc.check_persistent = On +odbc.max_persistent = -1 +odbc.max_links = -1 +odbc.defaultlrl = 4096 +odbc.defaultbinmode = 1 +[Interbase] +ibase.allow_persistent = 1 +ibase.max_persistent = -1 +ibase.max_links = -1 +ibase.timestampformat = "%Y-%m-%d %H:%M:%S" +ibase.dateformat = "%Y-%m-%d" +ibase.timeformat = "%H:%M:%S" +[MySQL] +mysql.allow_local_infile = On +mysql.allow_persistent = On +mysql.cache_size = 2000 +mysql.max_persistent = -1 +mysql.max_links = -1 +mysql.default_port = +mysql.default_socket = +mysql.default_host = +mysql.default_user = +mysql.default_password = +mysql.connect_timeout = 60 +mysql.trace_mode = Off +[MySQLi] +mysqli.max_persistent = -1 +mysqli.allow_persistent = On +mysqli.max_links = -1 +mysqli.cache_size = 2000 +mysqli.default_port = 3306 +mysqli.default_socket = +mysqli.default_host = +mysqli.default_user = +mysqli.default_pw = +mysqli.reconnect = Off +[mysqlnd] +mysqlnd.collect_statistics = On +mysqlnd.collect_memory_statistics = On +[OCI8] +[PostgreSQL] +pgsql.allow_persistent = On +pgsql.auto_reset_persistent = Off +pgsql.max_persistent = -1 +pgsql.max_links = -1 +pgsql.ignore_notice = 0 +pgsql.log_notice = 0 +[Sybase-CT] +sybct.allow_persistent = On +sybct.max_persistent = -1 +sybct.max_links = -1 +sybct.min_server_severity = 10 +sybct.min_client_severity = 10 +[bcmath] +bcmath.scale = 0 +[browscap] +[Session] +session.save_handler = files +session.use_strict_mode = 0 +session.use_cookies = 1 +session.use_only_cookies = 1 +session.name = PHPSESSID +session.auto_start = 0 +session.cookie_lifetime = 0 +session.cookie_path = / +session.cookie_domain = +session.cookie_httponly = +session.serialize_handler = php +session.gc_probability = 1 +session.gc_divisor = 1000 +session.gc_maxlifetime = 1440 +session.bug_compat_42 = On +session.bug_compat_warn = On +session.referer_check = +session.cache_limiter = nocache +session.cache_expire = 180 +session.use_trans_sid = 0 +session.hash_function = 0 +session.hash_bits_per_character = 5 +url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" +[MSSQL] +mssql.allow_persistent = On +mssql.max_persistent = -1 +mssql.max_links = -1 +mssql.min_error_severity = 10 +mssql.min_message_severity = 10 +mssql.compatibility_mode = Off +mssql.secure_connection = Off +[Assertion] +[COM] +[mbstring] +[gd] +[exif] +[Tidy] +tidy.clean_output = Off +[soap] +soap.wsdl_cache_enabled=1 +soap.wsdl_cache_dir="/tmp" +soap.wsdl_cache_ttl=86400 +soap.wsdl_cache_limit = 5 +[sysvshm] +[ldap] +ldap.max_links = -1 +[mcrypt] +[dba] +[opcache] +[curl] diff --git a/web/.vscode/tasks.json b/web/.vscode/tasks.json new file mode 100644 index 0000000..88ecdbd --- /dev/null +++ b/web/.vscode/tasks.json @@ -0,0 +1,13 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "Build PHAR", + "type": "shell", + "group": "build", + "command": "php -c ${workspaceFolder}/../tools/build/php.ini ${workspaceFolder}/../tools/build/build.php", + } + ] +} \ No newline at end of file