dartisan_cli 1.14.0
dartisan_cli: ^1.14.0 copied to clipboard
dartisan, the Daravel command-line interface. Creates projects, runs the dev server with hot reload, generators, migrations, queues and native builds.
Changelog #
1.14.0 #
- Changed:
doctor --productionfails unlessAPP_ENV=production(the production-only checks were silently skipped under any other environment, so the gate passed on a configuration never deployed as such);DoctorCommand.diagnose({production}). - Added production checks to
doctor: a missingAPP_KEYis an error;HASH_VERIFY=false,BCRYPT_ROUNDSbelow 10 andHTTP_MAX_BODY=0(no body limit) are warnings; a plain-httpAPP_URL,HASH_DRIVER=pbkdf2and secrets in a plain.env(no.env.encrypted) are notes. A missing.envis a note, not a warning, whenAPP_ENVcomes from the OS environment, so the gate passes inside the imagebuild --dockerproduces. - Fixed:
migrate --seedruns the root seeder; the flag was declared and never read. - Changed:
migrate:rollback,migrate:reset,db:seedandmigrate --seedrefuse to run underAPP_ENV=productionwithout--force, as artisan's do (migrate:freshalready did); plainmigrateis unchanged. - Changed: a framework error (configuration, a migration the registry does not know) is one
Error:line on stderr and exit 1 instead of a stack trace and the VM's 255;--verboseorDARAVEL_DEBUG=truekeeps the trace. mcp:servealso refusesdownandenv:encryptunderAPP_ENV=production.
1.13.0 #
- Added
serve --max-in-flightandserve --max-queue-delay(also passed on byserve --watch); new projects setHTTP_MAX_QUEUE_DELAY=200ms. - Added
CheckStatus.notice:doctornotes one isolate on a machine with more cores,LOG_LEVELbelowwarningand a SQLite file shared by several isolates, never failing, not even with--production. The PostgreSQL pool check counts the pool the driver opens and says "skipped" when the database is unreachable. db:install pgsqlwritesDB_POOL_SIZE=10andHTTP_MAX_IN_FLIGHT=40into the PostgreSQL block of.env.example.
1.9.0 #
- Added
dartisan upgrade [--check] [--to=<version>]anddartisan self-update. - Added
dartisan --version(-V). - Added
make:mailandmake:notification. mcp:installin a DDEV project registersddev dartisan mcp:serveand adds.ddev/commands/web/dartisan.
1.8.1 #
- Fixed:
client:flutter --stateadapters (providers.dart,blocs.dart,cubits.dart) no longer faildart analyze --fatal-infoswith an unused import when no route uses a paginator or an upload.
1.8.0 #
- Added
db:install <driver>anddb:transfer --from --to. - Added
client:flutter --state=riverpod,bloc,cubitand--watch; a schema'stitlenames its model and a 204 response isvoid. dartisan newprojects declare their auth routes (.validates(),.returns()).
1.7.0 #
- Added
client:flutter: generates a typed Dart/Flutter client package (package:http) from the routes, with models, paginators, error exceptions, SSE and WebSocket URLs, and the server's validation rules and messages checked on the device.
1.6.0 #
- Requires
daravel1.6.0 (server-sent events and WebSocket routes); the bundled guide includes the new section.
1.5.1 #
- Requires
daravel1.5.1 (JSON number range fix).
1.5.0 #
dartisan daragic:export [--out] [--only]: the application model (DAM) indam.jsonwithdaragic.lock.- Requires
daravel1.5.0.
1.4.1 #
- Requires
daravel1.4.1 (response header fix).
1.4.0 #
dartisan db:backup [--output] [--keep=N]: hot SQLite backups (VACUUM INTO, integrity checked).dartisan newincludes the feature flags migration; the welcome page links to/docs/api.buildOpenApiis re-exported frompackage:daravel.- Requires
daravel1.4.0.
1.3.0 #
dartisan model:show <Model> [--json];make:modeladds models tobootstrap/models.dart, whichdartisan newnow creates.mcp:servetoolsmodels,db_query(read-only),read_logs,last_error;docs_searchwithlocale: "id".dartisan mcp:installanddartisan new --mcp(.mcp.json+AGENTS.md).schedule:list --timezone;doctorwarns whenAPP_TIMEZONEis not UTC andSCHEDULE_TIMEZONEis empty.build --dockerleaves SQLite out whenDB_CONNECTIONis notsqlite.- Requires
daravel1.3.0.
1.2.0 #
dartisan mcp:serve [--allow-write]: MCP server on stdio for AI coding agents (about,routes,schema,conventions,docs_search;run_commandopt-in).dartisan build --no-sqlite: bundle without the SQLite library for PostgreSQL/MySQL apps;doctorwarns aboutsource: systemon an SQLite app.schedule:listshows each task's zone.- Requires
daravel1.2.0.
1.1.0 #
dartisan lintreportsunawaited_in_db_transactionandinvalid_validation_rule.- Requires
daravel1.1.0.
1.0.0 #
downandup(maintenance mode),db:show,db:tableandtinker.- MySQL and MariaDB: new projects register
daravel_mysql, andadoptaccepts MySQL applications. openapi:generatedocuments routes with file rules asmultipart/form-data.
1.0.0-beta.3 #
openapi:generatedocuments request bodies, query parameters and responses (Laravel resource and paginator envelopes,components.schemas) from route metadata.queue:pauseandqueue:continue;queue:workandschedule:workstop gracefully onSIGTERM.doctorcompares the connection pool against the server'smax_connections.env:encrypt,env:decryptandenv:obfuscate;adopt <laravel-path> [--check];serve --embed-queue --embed-scheduler.
1.0.0-beta.2 #
- Inside a project, the global
dartisannow runs the project CLI for every command, includingdartisan,dartisan --helpanddartisan <command> --help; onlynewstays global. dartisan newprojects serve the Daravel welcome page at/(HTML, or JSON for API clients) and include a welcome test; instructions usedartisan <command>.- The generated Dockerfile sets
PORT=8080so container platforms can override it.
1.0.0-beta.1 #
First public beta: dartisan new (api and minimal templates with CI and conformance tests), dev server with hot reload, generators, migrations, queue and schedule commands, doctor, test, native build (bundle with SQLite) and --docker, openapi:generate, model:sync.
The full history of the Daravel workspace is in the repository changelog.