diff --git a/.cursorrules b/.cursorrules index 7053db5..3af2832 100644 --- a/.cursorrules +++ b/.cursorrules @@ -24,10 +24,12 @@ Our 10 Step Development Lifecycle is as follows: We use a hybrid mix of Interfa Or RITIGITIRR pronounced Rih-tih-gih-tirr -The we wash rinse and repeat for each project. When we are done we have a fully functional and robust implementation of the requirements and specifications we will still follow this pattern for enhancements, bug fixes, and new features. +Then we wash rinse and repeat for each project. When we are done we will have a fully functional and robust implementation of the requirements and specifications presented. We will still follow this pattern for enhancements, bug fixes, and adding new features. + +The YAML API Specifications are in @Laravel Specifications +The Concrete Implementation is located @Web https://github.com/laravel/framework/tree/11.x/src/Illuminate +The Laravel API Docs are located @Laravel API -The API Specifications are in inbox/spec_packagename -The Concrete Implementations are in inbox/src_packagename The directory structure for the project is as follows: @@ -35,29 +37,29 @@ config/ = configuration files devops/ = docker and kubernetes configuration docs/ = documentation examples/ = example applications demonstrating using the Platform API +helpers/ = project tools and dart based mini cli helper apps +---tools/ = project wide tools +---utils/ = cli, console, and other utilities packages/ = platform packages resources = images, icons, and other resources scripts/ = utility scripts templates/ = starter templates tests/ = repository wide integration tests -tools/ = project wide tools -utils/ = cli, console, and other utilities -Protevus Platform is a hard-fork of Angel3 that is being refactored and rebranded to be Protevus Platform -For now all references to Angel3 remain the same, but in the future we will be changing them to Protevus or Platform +Protevus Platform is a hard-fork of Angel3 that is being refactored and rebranded to be the Protevus Platform. You must always refer to the project as Platform, not Protevus or Angel3 -You must always prefer leveraging existing sanctioned angel3 packages as dependencies where possible as most of them will be replace and can't be relied on initially. +You must always prefer leveraging existing sanctioned angel3 packages as dependencies where possible as most of them will be replaced and can't be relied on initially. You must always prefer leveraging existing standard dart packages as dependencies where possible -You will always prefer leveraging any packages that we can from pub.dev or github.com dart/flutter ecosystem +You will always prefer leveraging any packages that we can from the pub.dev or github.com dart/flutter ecosystem -Our goal is to reimplement the laravel illuminate packages as angel3 packages in short bringing Laravel to Dart -Our goal is to reach feature parity with the illuminate api so we must adhere to the specifications of laravel's api as we reimplement the illuminate packages +Our goal is to reimplement the laravel illuminate packages as angel3 packages in short, bringing Laravel to Dart +Our goal is to reach feature parity with the illuminate api so we must adhere to the specifications of laravel's api. -We will not reimplement any packages that are not part of laravel, such as symfony packages, or any other packages that are not part of the laravel framework as our goal is to have pure dart implementations so we must find packages in the dart ecosystem where possible or create the feature in dart. +We will not reimplement any packages that are not part of laravel, such as symfony packages, or any other packages that are not part of the laravel framework as our goal is to have a pure dart implementations so we must find packages in the dart ecosystem where possible or create that feature in dart. -We will not be re-implementing some features of laravel that would require reinventing wheels, for example angel3's server system is more then sufficiant and consist of the following angel3 packages which we will be initally keeping. Container, Framework, Route Http_Exception, Mock_Request, Modal. All other Illuminate packages will be reimplemented in dart. This list of keepers may change as we begin our phases of development. +We will not be re-implementing some features of laravel that would require reinventing wheels, for example angel3's server system is more then sufficiant and consist of the following angel3 packages which we will be initally keeping. Container, Framework, Route Http_Exception, Mock_Request, Modal. All other packages from the angel3 framework are in potential deprecation status from our platform. This list of keepers may change as we begin our phases of development. You must always take the following points into consderation when planning and executing your task. @@ -193,8 +195,6 @@ You must always take the following points into consderation when planning and ex Here are some notes that you should always keep in mind when working with the project -Here's the content formatted in Markdown: - ## General Guidelines - Always consider the idiomatic Dart approach when implementing Laravel features. diff --git a/.gitignore b/.gitignore index e49c464..3ba078b 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,5 @@ doc/api/ *.js.map +.aider* +.env diff --git a/helpers/print_melos_commands.dart b/helpers/print_melos_commands.dart index b14c5e6..ed2a165 100644 --- a/helpers/print_melos_commands.dart +++ b/helpers/print_melos_commands.dart @@ -8,8 +8,8 @@ void main() { final scripts = yamlMap['scripts'] as YamlMap; - print('Available Melos commands:'); - print('========================\n'); + print('Available Protevus Platform commands:'); + print('=====================================\n'); scripts.forEach((key, value) { final description = diff --git a/packages/container/container/pubspec.yaml b/packages/container/container/pubspec.yaml index 362838e..8982eb5 100644 --- a/packages/container/container/pubspec.yaml +++ b/packages/container/container/pubspec.yaml @@ -7,8 +7,8 @@ repository: https://git.protevus.com/protevus/platform/src/branch/main/packages/ environment: sdk: '>=3.3.0 <4.0.0' dependencies: - collection: ^1.17.0 - quiver: ^3.2.0 + collection: ^1.19.1 + quiver: ^3.2.2 dev_dependencies: - test: ^1.24.0 + test: ^1.25.8 lints: ^4.0.0 diff --git a/packages/container/container_generator/CHANGELOG.md b/packages/container/container_generator/CHANGELOG.md index ff1e266..5fecd3e 100644 --- a/packages/container/container_generator/CHANGELOG.md +++ b/packages/container/container_generator/CHANGELOG.md @@ -47,7 +47,7 @@ * Migrated to support Dart >= 2.12 NNBD * Updated linter to `package:lints` -* Updated to use `angel3_` packages +* Updated to use `platform_` packages ## 2.0.0 diff --git a/packages/container/container_generator/pubspec.yaml b/packages/container/container_generator/pubspec.yaml index 8ee27b0..d3aed3e 100644 --- a/packages/container/container_generator/pubspec.yaml +++ b/packages/container/container_generator/pubspec.yaml @@ -8,11 +8,11 @@ environment: sdk: '>=3.3.0 <4.0.0' dependencies: platform_container: ^9.0.0 - reflectable: ^4.0.0 + reflectable: ^4.0.12 dev_dependencies: - build_runner: ^2.4.0 - build_test: ^2.1.0 - test: ^1.24.0 + build_runner: ^2.4.13 + build_test: ^2.2.2 + test: ^1.25.8 lints: ^4.0.0 # dependency_overrides: # platform_container: diff --git a/packages/core/performance/hello/angel.md b/packages/core/performance/hello/angel.md index 4dc8c11..89c1d95 100644 --- a/packages/core/performance/hello/angel.md +++ b/packages/core/performance/hello/angel.md @@ -1,10 +1,10 @@ -# Angel Performance Results +# Platform Performance Results 5 consecutive trials run on a Windows 10 box with 4GB RAM, and several programs open in the background. Setup: -* Angel framework `1.0.8` +* Protevus Platform `1.0.8` * Running `wrk` 4.0.2.2 * 2 threads * 256 connections diff --git a/packages/core/pubspec.lock b/packages/core/pubspec.lock index 070bd23..c5080e9 100644 --- a/packages/core/pubspec.lock +++ b/packages/core/pubspec.lock @@ -5,23 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "5aaf60d96c4cd00fe7f21594b5ad6a1b699c80a27420f8a837f4d68473ef09e3" + sha256: "45cfa8471b89fb6643fe9bf51bd7931a76b8f5ec2d65de4fb176dba8d4f22c77" url: "https://pub.dev" source: hosted - version: "68.0.0" + version: "73.0.0" _macros: dependency: transitive description: dart source: sdk - version: "0.1.0" + version: "0.3.2" analyzer: dependency: transitive description: name: analyzer - sha256: "21f1d3720fd1c70316399d5e2bccaebb415c434592d778cce8acb967b8578808" + sha256: "4959fec185fe70cce007c57e9ab6983101dbe593d2bf8bbfb4453aaec0cf470a" url: "https://pub.dev" source: hosted - version: "6.5.0" + version: "6.8.0" args: dependency: transitive description: @@ -114,10 +114,10 @@ packages: dependency: "direct dev" description: name: build_runner - sha256: "644dc98a0f179b872f612d3eb627924b578897c629788e858157fa5e704ca0c7" + sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" url: "https://pub.dev" source: hosted - version: "2.4.11" + version: "2.4.13" build_runner_core: dependency: transitive description: @@ -170,10 +170,10 @@ packages: dependency: "direct main" description: name: collection - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.19.0" + version: "1.19.1" convert: dependency: transitive description: @@ -322,10 +322,10 @@ packages: dependency: transitive description: name: macros - sha256: "12e8a9842b5a7390de7a781ec63d793527582398d16ea26c60fed58833c9ae79" + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" url: "https://pub.dev" source: hosted - version: "0.1.0-main.0" + version: "0.1.2-main.4" matcher: dependency: "direct main" description: @@ -682,4 +682,4 @@ packages: source: hosted version: "3.1.2" sdks: - dart: ">=3.4.0 <4.0.0" + dart: ">=3.5.0 <4.0.0" diff --git a/packages/core/pubspec.yaml b/packages/core/pubspec.yaml index 4e5c9c3..33a67de 100644 --- a/packages/core/pubspec.yaml +++ b/packages/core/pubspec.yaml @@ -13,31 +13,31 @@ dependencies: platform_route: ^9.0.0 platform_mocking: ^9.0.0 belatuk_merge_map: ^5.1.0 - belatuk_combinator: ^5.1.0 - belatuk_http_server: ^4.1.0 - charcode: ^1.3.0 - file: ^7.0.0 - http_parser: ^4.0.0 - http2: ^2.0.0 - logging: ^1.1.0 + belatuk_combinator: ^5.2.0 + belatuk_http_server: ^4.4.0 + charcode: ^1.3.1 + file: ^7.0.1 + http_parser: ^4.1.1 + http2: ^2.3.0 + logging: ^1.3.0 matcher: ^0.12.16 - meta: ^1.9.0 + meta: ^1.16.0 mime: ^1.0.0 - path: ^1.8.0 - quiver: ^3.2.0 + path: ^1.9.1 + quiver: ^3.2.2 recase: ^4.1.0 - stack_trace: ^1.11.0 - string_scanner: ^1.2.0 - tuple: ^2.0.0 - uuid: ^4.0.0 - collection: ^1.17.0 + stack_trace: ^1.12.0 + string_scanner: ^1.4.0 + tuple: ^2.0.2 + uuid: ^4.5.1 + collection: ^1.19.1 dev_dependencies: - http: ^1.0.0 - io: ^1.0.0 - test: ^1.24.0 + http: ^1.2.2 + io: ^1.0.4 + test: ^1.25.8 lints: ^4.0.0 mockito: ^5.4.4 - build_runner: ^2.0.0 + build_runner: ^2.4.13 # dependency_overrides: # platform_container: # path: ../container/angel_container diff --git a/packages/exceptions/pubspec.yaml b/packages/exceptions/pubspec.yaml index 7d3df65..4876886 100644 --- a/packages/exceptions/pubspec.yaml +++ b/packages/exceptions/pubspec.yaml @@ -8,4 +8,4 @@ environment: sdk: '>=3.3.0 <4.0.0' dev_dependencies: lints: ^4.0.0 - test: ^1.24.0 \ No newline at end of file + test: ^1.25.8 \ No newline at end of file diff --git a/packages/mocking/README.md b/packages/mocking/README.md index 048d51c..9e716cd 100644 --- a/packages/mocking/README.md +++ b/packages/mocking/README.md @@ -9,7 +9,7 @@ Manufacture dart:io HttpRequests, HttpResponses, HttpHeaders, etc. This makes it possible to test server-side Dart applications without having to ever bind to a port. -This package was originally designed to make testing [Protevus](https://angel3-framework.web.app/) applications smoother, but works with any Dart-based server. +This package was originally designed to make testing [Protevus](https://protevus.com/) applications smoother, but works with any Dart-based server. ## Usage diff --git a/packages/mocking/pubspec.yaml b/packages/mocking/pubspec.yaml index f456072..ae3685b 100644 --- a/packages/mocking/pubspec.yaml +++ b/packages/mocking/pubspec.yaml @@ -7,10 +7,10 @@ repository: https://git.protevus.com/protevus/platform/src/branch/main/packages/ environment: sdk: '>=3.3.0 <4.0.0' dependencies: - charcode: ^1.3.0 + charcode: ^1.3.1 dev_dependencies: - http: ^1.0.0 - test: ^1.24.0 + http: ^1.2.2 + test: ^1.25.8 lints: ^4.0.0 # dependency_overrides: # platform_core: diff --git a/packages/model/pubspec.yaml b/packages/model/pubspec.yaml index 58a3e50..b388c63 100644 --- a/packages/model/pubspec.yaml +++ b/packages/model/pubspec.yaml @@ -8,4 +8,4 @@ environment: sdk: '>=3.3.0 <4.0.0' dev_dependencies: lints: ^4.0.0 - test: ^1.24.0 + test: ^1.25.8 diff --git a/packages/route/README.md b/packages/route/README.md index 2ad330e..6d1dd01 100644 --- a/packages/route/README.md +++ b/packages/route/README.md @@ -13,7 +13,7 @@ A powerful, isomorphic routing library for Dart. ## Contents -- [Protevus Route](#angel3-route) +- [Protevus Route](#platform-route) - [Contents](#contents) - [Examples](#examples) - [Routing](#routing) diff --git a/packages/route/pubspec.yaml b/packages/route/pubspec.yaml index 4f458fd..f066f8e 100644 --- a/packages/route/pubspec.yaml +++ b/packages/route/pubspec.yaml @@ -7,12 +7,12 @@ repository: https://git.protevus.com/protevus/platform/src/branch/main/packages/ environment: sdk: '>=3.3.0 <4.0.0' dependencies: - belatuk_combinator: ^5.1.0 - string_scanner: ^1.2.0 - path: ^1.8.0 + belatuk_combinator: ^5.2.0 + string_scanner: ^1.4.0 + path: ^1.9.1 dev_dependencies: - build_runner: ^2.4.0 - build_web_compilers: ^4.0.0 - http: ^1.0.0 - test: ^1.24.0 + build_runner: ^2.4.13 + build_web_compilers: ^4.0.11 + http: ^1.2.2 + test: ^1.25.8 lints: ^4.0.0 diff --git a/packages/view/.gitignore b/packages/view/.gitignore deleted file mode 100644 index 3cf1f6c..0000000 --- a/packages/view/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -.dart_tool/ -.packages -pubspec.lock -.pub/ -build/ -coverage/ diff --git a/packages/view/pubspec.yaml b/packages/view/pubspec.yaml deleted file mode 100644 index 4fe39ce..0000000 --- a/packages/view/pubspec.yaml +++ /dev/null @@ -1,16 +0,0 @@ -name: view -description: View rendering package implementing Laravel-style view system -version: 0.1.0 - -environment: - sdk: '>=3.0.0 <4.0.0' - -dependencies: - path: ^1.8.0 - meta: ^1.9.0 - collection: ^1.18.0 - mustache_template: ^2.0.0 - -dev_dependencies: - test: ^1.24.0 - lints: ^2.1.0 diff --git a/pubspec.lock b/pubspec.lock index 1d1d903..79f5bfa 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,23 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "5aaf60d96c4cd00fe7f21594b5ad6a1b699c80a27420f8a837f4d68473ef09e3" + sha256: "45cfa8471b89fb6643fe9bf51bd7931a76b8f5ec2d65de4fb176dba8d4f22c77" url: "https://pub.dev" source: hosted - version: "68.0.0" + version: "73.0.0" _macros: dependency: transitive description: dart source: sdk - version: "0.1.0" + version: "0.3.2" analyzer: dependency: transitive description: name: analyzer - sha256: "21f1d3720fd1c70316399d5e2bccaebb415c434592d778cce8acb967b8578808" + sha256: "4959fec185fe70cce007c57e9ab6983101dbe593d2bf8bbfb4453aaec0cf470a" url: "https://pub.dev" source: hosted - version: "6.5.0" + version: "6.8.0" ansi_styles: dependency: transitive description: @@ -234,10 +234,10 @@ packages: dependency: transitive description: name: macros - sha256: "12e8a9842b5a7390de7a781ec63d793527582398d16ea26c60fed58833c9ae79" + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" url: "https://pub.dev" source: hosted - version: "0.1.0-main.0" + version: "0.1.2-main.4" matcher: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 83417ef..526f0cf 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -10,13 +10,12 @@ environment: # Add regular dependencies here. dependencies: - path: ^1.8.0 + path: ^1.9.1 dev_dependencies: lints: ^4.0.0 - melos: ^6.1.0 - test: ^1.24.0 + melos: ^6.2.0 + test: ^1.25.8 yaml: ^3.1.2 args: ^2.6.0 - yaml_edit: ^2.2.1 - #path: ^1.8.0 \ No newline at end of file + yaml_edit: ^2.2.1 \ No newline at end of file