Commit 7b8250b
authored
Update master with dev-v4 (#591)
* Feat/context decoupling (#557)
* feat: started work on decoupling
* feat: add total record count
* feat: green tests, new managers
* feat: changed startup
* feat: most annoying commit of my life, rewriting dozens of controllers
* feat: rename: QueryManager -> RequestManager, deeper seperation of concerns, 12 tests running...
* feat: removed JsonApiContext dependency from controller, fixed namespaced tests
* feat: decoupled controllers
* chore: renamed resourcegraphbuilder, took out some extensions, made benchmarks work again
* feat: json api context decoupling mroe and more
* chore: readded solutions
* feat: upgrading to 2.2, setting contextentity in middleware
* fix: removed outdated authorization test
* fix: requestmeta tests
* fix: some acceptance tests
* fix: pagination
* fix: total records in meta
* feat: introduced JsonApiActionFilter
* fix: more tests
* Feat/serializer context decoupling (#558)
* feat: started work on decoupling
* feat: add total record count
* feat: green tests, new managers
* feat: changed startup
* feat: most annoying commit of my life, rewriting dozens of controllers
* feat: rename: QueryManager -> RequestManager, deeper seperation of concerns, 12 tests running...
* feat: removed JsonApiContext dependency from controller, fixed namespaced tests
* feat: decoupled controllers
* chore: renamed resourcegraphbuilder, took out some extensions, made benchmarks work again
* feat: json api context decoupling mroe and more
* chore: readded solutions
* feat: upgrading to 2.2, setting contextentity in middleware
* fix: removed outdated authorization test
* fix: requestmeta tests
* fix: some acceptance tests
* fix: pagination
* fix: total records in meta
* feat: introduced JsonApiActionFilter
* fix: more tests
* feat: decoupled deserializer and serializer
* chore: remove / cleanup old serializers
* chore: remove operation services
* tests: unit tests client/server (de)serializers
* chore: various edits to run tests
* fix: rm dasherized resolver
* chore: remove JsonApiContext and corresponding interface
* chore: reorganize namespaces
* chore: rm old tests
* chore: rm unused document builder
* chore: add comments to deserialization classes
* chore: add comments
* chore: rm IJsonApiContext from sort attr instantiation
* feat: (re)introduced omit null value behaviour (and now omit default value behaviour too) using a serializer options provider
* chore: remove more jsonapicontext references
* chore: minor renames, add wiki for serialization
* chore: improve wiki
* chore: wiki
* chore: wiki
* chore: add a bunch of comments, renamed a few services
* chore: wired up nested sparse field selection
* chore: wired up omit behaviour
* chore: prettied some comments
* chore: remove (almost) all references to jsonapicontext in unit tests project
* chore: removed last bits of jsonapicontext
* fix: tests serialization passing again
* chore: rename included query service to include query service
* chore: improve comment
* chore: improve comment
* chore: delete jsonapicontext tests
* chore: remove space
* test: email config
* chore: rename client / server (de)serializer to request/response (de)serializer
* chore: rename client / server (de)serializer to request/response (de)serializer
* feat: introduce IQueryParameter
* chore: move request/response (de)serializer to client/server namespace for easier future isolation
* chore: update namespaces
* chore: rm textfile
* chore: fixing failing unit tests
* chore: rename query services, adjustment namespace
* chore: reorganised test files for serialization, added relationship path serialization tests
* feat: request relationship in response serializer
* chore: wired up response serializer in formatter layer
* feat: IGetRelationshipService now returns TResource instead of object, which decouples it from serializers requirements
* fix: support for serving document of resource type different from request resource, as required by resourceservice.getrelationships()
* chore: simplified linkbuilders
* chore: several fixes for e2e tests
* fix: various e2e tests, decoupled service layer from serialization format
* fix: inclusion edgecase
* chore: fix error formatting tests
* chore: naming consistency sparsefield and include query services
* chore: various adjustments to make e2e test project build and pass again
* chore: fix build various e2e tests
* chore: fix build various e2e tests
* fix: e2e test Can_Include_Nested_Relationships
* fix: e2e test Can_Patch_Entity
* fix: e2e test Patch_Entity_With_HasMany_Does_Not_Include_Relationships
* fix: e2e test Can_Create_Entity_With_Client_Defined_Id_If_Configured
* chore: rename base document parser and builder
* fix: e2e test Can_Create_Guid_Identifiable_Entity_With_Client_Defined_Id_If_Configured
* fix: unit tests various
* feat: reorganisation inheritance serialization layer
* fix: unit tests after inheritance update
* fix: wire up correct resource object builder implementation in serializers
* fix: e2e remaining CreatingDataTests
* chore: refactor creatingdata tests
* fix: e2e test paging
* fix: e2e controller tests
* chore: wiring up new resource object builders to dependency graph
* chore: response resource object builder unit test, restored repo and resourcedef unit tests
* chore: finishing touches comments serialization
* Feat/serialization wiki (#561)
* docs: add decoupling architecture, wiki folder
* docs: add v4 wiki
* chore: restructure of intro
* chore: v4
* chore: remove example projects
* chore: remove bulk related code
* chore: remove bulk related tests
* chore: remove logic related to ER splitting
* chore: remove split test project
* chore: update other test projects to pass again
* chore: fix typo
* Added value types support to the filters isnull & isnotnull. (#549) (#573)
* fix: missing reference'
* chore: fix spacing
* feat: draft of reflectively retrieving all query parameters
* chore: scaffolded required query parameter service
* chore: migrate parsing logic sparsefields
* chore: reorganising test models in unit test project
* tests: add includeservicetests
* chore: migrate parsing logic of filter to filter service
* chore: prefix private variables underscore in editorconfig
* feat: common query parameter base service
* feat: interfaces of query parameter services
* feat: sort service and filter service
* feat: wired up filter and sort service with refactored data and repo layer
* feat: new omit default and null value services, wired them up in serialization
* feat: refactored remaining query services, introduced new queryparser for better extensibility
* feat: wired up new query parser in action filter, slimmed down current request
* chores: various test fixes, minor fixes
* chores: various test fixes, minor fixes
* chore: add more unit tests
* docs: query parameters wiki
* fix: typo
* chore: rename, update wiki
* chore: various minor fixes, PR self review
* feat: added new overload in query controllers (#580)
* Cleaning repository of remaining business logic (#579)
* feat: first draft of attribute diffing in repo layer
* chore: remove EF Core-specific DetachRelationshipPointers from repository interface
* chore: replace SingleOrDefaultAsync with FirstOrDefaultAsync for increased performance
* chore: decoupled ResourceDefinition from repository layer in Filter implementation
* chore: remove updatevaluehelper
* fix: Can_Patch_Entity test
* fix: EntityResourceTest, variable name updatedFields -> targetedFields
* chore: add comment referencing to github issue
* chore: rename pageManager -> pageService
* chore: remove deprecations
* fix: undid wrong replace all of BeforeUpdate -> pageService
* chore: remove unreferenced method in ResponseSerializer
* Allow for multiple naming conventions (camelCase vs kebab-case) (#581)
* feat: draft of DI-registered ApplicationModelConvention
* feat: injectable IResourceNameFormatter and IJsonApiRoutingCOnvention now working
* test: kebab vs camelcase configuration
* feat: kebab vs camel completed
* chore: spacing
* style: spacing
* refactor: share logic between resource name formatter implementations
* docs: resource formatter comments
* docs: comments improved
* chore: remove static reference to ResourceNameFormatter
* chore: reviewer fixes
* style: removed spacing
* style: removed spacing
* fix: #583
* feat: throw error on deeply nested selections
* docs: add extra comment
* chore: processed Wisepotatos review
* Separation of concerns ResourceGraph (#586)
* refactor: move HasManyThrough GetValue and SetValue logic to HasManyThroughAttribute
* feat: remove GetPublicAttributeName from ResourceGraph and remove dependency on ResourceGraph of controller layer
* style: spacing in BaseJsonApiController<,>
* feat: remove GetEntityFromControllerName from ResourceGraph
* feat: remove GetInverseRelationship from ResourceGraph
* feat: decouples UsesDbContext from ResourceGraph and introduces decoupled application instantation
* chore: remove redundant injections of IResourceGraph
* refactor: merge IContextEntityProvider and IFieldsExplorer into IResourceGraphExplorer
* style: cleanup of variable names
* chore: various fixes for PR review, mostly style and variable naming
* style: rename IResourceGraphExplorer back to IResourceGraph, consitent usage of IContextEntityProvider
* docs: comments for DefaultActionFilter and DefaultTypeFilter
* docs: comments JsonApiApplicationBuilder
* style: consistent variable naming|
* chore: wire up IControllerResourceMapping
* refactor: routing convention implements controller mapping interface
* Update variable / class naming conventions (#589)
style: DefaultResourceRepository and DefaultEntityService as consie 833da6a
style: rename old repository interfaces 519513d
style: ContextEntity --> ResourceContext d038582
style: rename Entity to Resource f2e411c
style: TEntity --> TResource 3af6f9b
style: DependentType, PrincipalType --> RightType, LeftType ce08b4f
style: replaced principal with left and dependent with right whenev b162519
chore: remove redundant bindings throughout entire codebase e509956
refactor: regroupe hook container and executors 48495d3
style: IGenericProcessor --> IHasManyThroughUpdateHelper f19e606
chore: delete rogue file 7d235ab
style: rename GenericProcessorFactory --> GenericServiceFactory. 6a186a5
chore: fix NoEntityFrameworkExample project 354a1be
* chore: process feedback
* Fix DiscoveryTests and NoEntityFrameworkExample project/tests (#590)
* fix: DiscoveryTests project
* fix: NoEntityFrameworkExample project + tests
* Simplify DefaultResourceService constructor (#592)
* refactor: simplify resource service constructor with IEnumerable<IQueryParameterService>
* feat: FirstOrDefault<TQueryParameterService>() extension method
* style: remove whitespace
* fix: fix build.sh
* fix: appveyor build
* fix: hotfix constructor ServiceDiscoveryFacadeTests
* upgrade to .net core 2.1
* .NET core 2.1 -> 2.2 (#594)
* merge: merge into correct email:
* feat: upgrade to 2.2
* chore: spacing fix
* chore: revert silencing error
* chore: small spacing fix
* chore: rm whitespace
* fix: public setters to allow testing
* .NET Core 2.2 -> 3.0 (#597)
* merge: merge into correct email:
* feat: upgrade to 2.2
* chore: spacing fix
* chore: revert silencing error
* chore: small spacing fix
* chore: remove unneeeded dependencies
* chore: fix framework dependencies
* chore: updates
* chore: test fixes
* chore: start integration tests
* chore: cleanup name of dertest
* chore: start of getRepostory
* chore: upgrade testsdk version + xunit version
* feat: use template in version control of packages in integrationTests
* feat: unit test assemblyinfo add, port old test to integration (attribute updater)
* docs: add version compatibility
* chore: add asterisk for version number
* feat: port defaultentityrepositorytests to integration tests
* chore: should add logging, done.
* tests: bad response from tests
* chore: fixes for lang version and making ifs more noticable
* fix: fix routing issue with upgrade to enableendpointrouting
* chore: HostEnvironment -> IWebHostEnvironment
* chore: act -> Act, assert -> Assert, arrange -> Arrange
* chore: fix tests
* chore: re-add unit test for defaultentityrepository for test IAsyncQueryProvider that's actually a List
* refactor: make if statements more conscise
* chore: final stretch
* tests: revert for good tests
* Revert "tests: revert for good tests"
This reverts commit 98b1119.
* Revert "chore: final stretch"
This reverts commit d6f763f.
* fix: client generated id tests
* fix: create data tests with workaround for efcore 3.0 bug
* refactor: DetachRelationships usage of is operator
* fix: move MetaStartup to other assembly as .net core 3 bug workaround
* fix: UpdatingRelationshipTests locally evaluated queries error
* feat: reintroduced generic processor (RepositoryRelationshipUpdateHelper) to fix locally evaluated expressions issue
* feat: full sql support for UpdateRelationshipsAsync using expression trees
* fix: DeletingDataTest
* fix: paging test
* fix: paging unit tests
* chore: remove RE-split models, duplicate models to NoEntityFrameworkExample
* fix: NoEntityFrameworkExample tests fixed by workaround assembly problem
* fix: connection string e2e test projects
* chore: minor cleanup
* chore: minor cleanup
* chore: cleanup
* chore: update travis.yml
* chore: retry travis.yml
* chore: retry .travis.yml
* chore: appveyor.yml
* fix: CI builds
* chore: attempt to fix travis.yml
* chore: spacing
* chore: postgres version bump
* chore: fix readme + downgrade postgres
* chore: revert1 parent 676b654 commit 7b8250b
File tree
488 files changed
+14039
-16075
lines changed- benchmarks
- LinkBuilder
- Query
- RequestMiddleware
- Serialization
- src
- Examples
- GettingStarted
- Controllers
- Data
- Models
- Properties
- ResourceDefinitionExample
- JsonApiDotNetCoreExample
- Controllers
- Data
- Models
- Entities
- Resources
- Properties
- Resources
- Services
- Startups
- NoEntityFrameworkExample
- Controllers
- Data
- Models
- Properties
- Services
- OperationsExample
- Controllers
- ReportsExample
- Controllers
- Properties
- ResourceEntitySeparationExample
- Controllers
- Models
- Profiles
- Properties
- JsonApiDotNetCore
- Builders
- Configuration
- Controllers
- Data
- DependencyInjection
- Extensions
- Formatters
- Graph
- ResourceNameFormatters
- Hooks
- Discovery
- Execution
- Traversal
- Internal
- Contracts
- Exceptions
- Generics
- Query
- Middleware
- Models
- Annotation
- JsonApiDocuments
- Operations
- Properties
- QueryParameterServices
- Common
- Contracts
- RequestServices
- Contracts
- Request
- Serialization
- Client
- Common
- Server
- Builders
- Contracts
- Services
- Contract
- Operations
- Processors
- test
- DiscoveryTests
- IntegrationTests
- Data
- JsonApiDotNetCoreExampleTests
- Acceptance
- Extensibility
- HttpMethodRestrictions
- ResourceDefinitions
- Spec
- DocumentTests
- Helpers
- Extensions
- Models
- Services
- Startups
- NoEntityFrameworkTests
- Acceptance/Extensibility
- OperationsExampleTests
- Add
- Factories
- Get
- Remove
- Transactions
- Update
- ResourceEntitySeparationExampleTests
- Acceptance
- UnitTests
- Builders
- Controllers
- Data
- Extensions
- Graph
- Internal
- Models
- QueryParameters
- ResourceHooks
- ResourceHookExecutor
- Create
- Delete
- Read
- Update
- Serialization
- Client
- Common
- Server
- Services
- Operations
- Processors
- wiki/v4
- content
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
488 files changed
+14039
-16075
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | 2 | | |
4 | 3 | | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
8 | 7 | | |
9 | | - | |
| 8 | + | |
10 | 9 | | |
11 | 10 | | |
12 | 11 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | 38 | | |
45 | 39 | | |
46 | 40 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | 2 | | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
19 | 13 | | |
20 | 14 | | |
21 | 15 | | |
22 | 16 | | |
23 | 17 | | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
28 | 22 | | |
29 | | - | |
30 | | - | |
| 23 | + | |
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
| 45 | + | |
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
60 | 62 | | |
61 | 63 | | |
62 | 64 | | |
| |||
79 | 81 | | |
80 | 82 | | |
81 | 83 | | |
82 | | - | |
| 84 | + | |
83 | 85 | | |
84 | 86 | | |
85 | 87 | | |
86 | 88 | | |
87 | 89 | | |
88 | 90 | | |
89 | 91 | | |
90 | | - | |
91 | | - | |
| 92 | + | |
92 | 93 | | |
93 | 94 | | |
94 | | - | |
| 95 | + | |
95 | 96 | | |
96 | 97 | | |
97 | 98 | | |
| |||
107 | 108 | | |
108 | 109 | | |
109 | 110 | | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
Lines changed: 36 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
7 | | - | |
| 8 | + | |
8 | 9 | | |
9 | 10 | | |
10 | 11 | | |
| |||
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
17 | | - | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
35 | | - | |
36 | | - | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
37 | 69 | | |
38 | 70 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
13 | | - | |
| 12 | + | |
| 13 | + | |
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
8 | 9 | | |
9 | 10 | | |
10 | 11 | | |
| |||
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
24 | | - | |
25 | | - | |
| 25 | + | |
| 26 | + | |
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
30 | 31 | | |
31 | | - | |
| 32 | + | |
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| |||
56 | 57 | | |
57 | 58 | | |
58 | 59 | | |
59 | | - | |
| 60 | + | |
60 | 61 | | |
61 | | - | |
62 | | - | |
| 62 | + | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
0 commit comments