IntelliTect Coalesce Versions Save

Helping you quickly build amazing sites

v3.0.0-rc.20200901.1

3 years ago

Changes:

  • b8fad9eaa9ac462299440f8f31029ab2bda2aef3 Fix generated DTOs - collection properties were expected to always be typed as ICollection
  • 4e682f9a195c4508aaf26378f86081d0674f577c EF 5 compatibility for IAsyncQueryProvider
  • 40c130dfeea963b89e21c42e1df3eb83533df3d2 Introducing IClassDto<T, TContext> - Custom DTOs even if the DbContext isn't exposed with Coalesce! (#176)
  • 3c54e6bf2d13a9f40abe0efe1f8e877be618cad9 coalesce-vue - fix error when serializing a nested object property with a null value to a dto.
  • 88728e6080298e23f1098edf9b901dd298ced680 - Fix Dto->Model mapping for collections
  • 8ba4258788f7364a19a394195ce5217cd2494f71 Support passing of properties from the client to the server whose type is an External Type
  • 322cce51d791d81ea9793601697b06dbb97f3d67 #59 - Support CancellationToken in DataSources (#142)
  • ebe79a51a92cc778bc6d2a8f5d9d0eefcfa3c07e Pass CancellationToken from controllers to custom methods (sort of #59 but not really)
  • 833191ad7050a9576d78f175f9954c60b120fa18 Stop copying new target files every time we analyze a project - its forcing MS build to rebuild all dependencies every time we code gen because the targets file counts as an input file to the build
  • 9adb2aabcd23dc7f53839abce2b9f11911e67bde Use GetQueryAsync in ProjectedDtoDataSource
See More
  • 9cf83ce4646063ed0518dc4eed82c77830ecfb06 Add GetQueryAsync to StandardDataSource
  • 6497b3ef8e4cfad8feb0a6142fb78c94fd790061 Fix vue metadata for min/max validation rules
  • 24351029832d172b18be97d83e35799f9ac21bbe Restore the admin table buttons - more got deleted when removing the CSV endpoints than was intended.
  • 7fefdf984f2205301b028ef5de931558ea29561d Fix #52 - Prevent local vars in controller actions generated for methods from conflicting with the method's parameters
  • 3d94233bb84ef052c5e32b1b0b09b9c2b04afe18 Fix #13 - Accept string[] for roles on SecurityAttribute
  • 681d5c8f1549d87ac2b962f1c3c6cd68d67bc0d5 Fix symbol generation for IntelliTect.Coalesce.Cli.csproj
  • 1cf70f63946cf0c47124e1f82d54d266fd88ad23 Update docs for #169
  • 37d18f38fccf03b7f1b1da2403a09a128d8dde45 [breaking] Fix #95 - removed the CSV endpoints
  • 3e232a0d5c0638633da69d0e18828fe6a278017c [breaking] Fix #123 - Added implicit conversion from T to ItemResult<T>
  • d5c37f8e67c42b10723513641e38a270bfb613f3 [breaking] Fix #169 - Omit "Async" suffix from generated controller actions and Typescript
  • 05667ca6642f6d28c43906112fdb0fe641c2a295 Fix #158 - parsing empty/blank as a number should result in null, not 0.
  • da91c7206c2665153d884e9622940a97a51c50c9 Fix #164 - filter params not being removed the first time the X is clicked.
  • 55328141e46672307ca3943650fec4ef5c2b2714 Fix #166 - Don't emit CSV endpoints if reads are disallowed.
  • 9b1195d8f3ca6bd35ff9c3d745b1934d5c4a3a51 Fix #172, #162 - Allow column reordering on c-table, and documentation fixes.
  • 8d50c5883d6e6d01bb9bd5e509d54f08fedc2889 Fix #160 - throw a validation error for static [Service] classes.
  • 107d3471ad3713f274c3653d60e3f3b1f1a86c53 Bump lodash from 4.17.15 to 4.17.19 in /src/coalesce-vue (#170)
  • 79159e3f2d07c31e308af4d92fd8630205bd702d Make InverseProperty slightly more strict to reduce the chance that it could go into infinite recursion (by avoiding checks against Role when possible).
  • c0f0005bdf3ade7ab87594394074967e2833d625 Prevent InverseProperty from incorrectly picking up the wrong type of property when detecting by convention.
  • d631280dac5e870351b9efe5fce5397efc3348b3 Vue: Added some of the ClientValidation rules that make sense.
  • 8593d27ed83cd4730619cc9e1ea379e8afd90ab2 Document support of DatabaseGenerated attribute. Fix https://github.com/dotnet/roslyn/issues/37379
  • 5539d4c20f60826c0fdd3879896a2b8dc8af1f81 Hide bullet point from errors in c-loader-status if there is only one error.
  • 8f94e55865c744d7cb16d5aaf550bf4c17724712 [breaking] Added support for non-database-generated primary keys
  • dfff83c19bc49c5b4b303890606c0b23eae3637f Add ContinuousIntegrationBuild msbuild property
  • 008dedb22b701bdb525ab61237d4847acb40e4bd Create Snupkegs (.snupkg symbol packages)
  • f018e9ef0cb7f9dd4a93233674ad6d01c4bfd9d5 Added C# 8 nullability to the IntelliTect.Coalesce project. (#168)
  • fa73569e29d1687b21522f09b1180504e45f3fc0 Attempting to fix sourcelink
  • 5b3f7de42a03bfedf38ae8807d0cd945ae5bdd7d Bump swashbuckle version (#161)
  • b74b8c4a009558cfbe4acc60a72f8b0edd87f511 Added support for editable table mode for c-admin-table and c-table
  • b8a4b0ea812d908605b15b1d76b241b1bb215221 Fix event used by v-file-input when deleted to by c-input
  • 48f680f023b53e2c217181fbf2f3b061aff38877 Added pageSizes param to c-admin-table
  • 1507f3b6bb00787560892ccf0748b239fabe8b3a That was way too much effort - just adding date-fns-tz as a hard dependency.
  • 605afb8b18fd36a94f75e728e4f897d44d5b51a5 Make the tests run
  • 8c5d9751f1f126a319e0153c2b64814a844e0059 Totally different approach now for date-fns-tz to avoid absurd warnings from webpack about optional modules being missing...
  • ca8bbfce0c7bec8d0fee25feb1d80865a44b85c2 Fix optional import so webpack doesn't freak out.
  • cdd60a7d79d4dd6e625a77db6b0e7a017bd99c36 That was supposed to be a peer dep, not an optional dep.
  • 44896c406940f3f0552bf76909e79b30fa3e8805 Wasn't an issue with the node version, it was an issue with date-fns-tz being entirely unintuitive.
  • ade6fb9fc91fa0e53836e2accdc96c7e47e83c70 Try again with latest node
  • 66bedae483621224875a3db22ecd627ec44538ba Optionally support date-fns-tz for formatting dates.
  • 0012244819b6b886dbcd5f38757e776fb0874404 bindKeyToRouteOnCreate - allow specifying a route name
  • b183ad33279b0e92a2b34f90142c0e5ff49ec847 npm audit fix --force
  • c1e5513a81436de5c7582e5165e9b1c2f5caa523 Make c-loader-status resilient against null|undefined
  • 5b006d04c166758bc75cfeaf29d1f9c075d7d1b8 Fix pagination issues from last commit
  • 9cb4cebd3bd9a01bf734655baae9a65ebe6d18f5 Support ListResults that have an indeterminate total count (i.e. a TotalCount of -1)
  • a9fe9d263ef35d398c62b690a28b2f44d87aeca1 Remove unnecessary prop type check on c-input
  • 99263ebaf74d5221b630b3f6b97950387d4d970e - Add method to API callers to reset their args objects
  • d1c0bb94dc37583d2eaa3caf4e850605751c709e Fix Vue codegen for date-returning methods.
  • 268e49a065678905a73c6de9275e218d694fc4ee Workaround https://github.com/nodejs/node/issues/3285256
  • 35237754544e47a96bba01669db976336751124e Fix bug in safari with parsing ISO date strings that lack timezones - Safari's Date constructor incorrectly assumes a UTC timezone rather than a local timezone.
  • 4205d96bf762a2e5f9fd195e9ec7378fb425ba96 Prevent NullReferenceException when searching entities that lack a valid fallback search property ("Name", or a PK)
  • 8e30d300aaf59a4ff318aaa50fe56b6107f386e8 Use ICustomAttributeProvider.IsDefined in HasAttribute to avoid allocations.
  • c1887b38b18020813133020b221181a4ba60c152 Make multiline comments that come from c# xmldoc comments not ugly.
  • 0662b26aeccf00b690fe40fc90cf18a65818e0db Add additional string search methods (#165)
  • 19ac04c634073ac76d15a1f920b9f115c239daea Revert "Fix bindToQueryString - resetting values to null didn't work"
  • 5d05aca4cacfce7ebd939c488de5ac78e4c4d460 Fix bindToQueryString - resetting values to null didn't work
  • d862034c116f93cc44ee81ccbd95789f66c996c4 Fix manually resolved routes so they work when basePath is used with vue-router.
  • 1cc0e692cd434cf8a1c2f80ff9f62b0a72b5c82f Allow auto-closing the date picker.
  • 23358684055e34064e0644528e09905081d0ef33 Fix #159 - Render save/delete errors from c-select-many-to-many.vue.
  • fe24ecdc353dddd2f50cdaf323ea9dc3788c1acb c-input => c-select (thanks @COsborn2)
  • ceb24ee37e4b8933a6ad68777d9df4a6a3925794 Refactor out IncludableQueryProvider so we aren't dependent on EF internals anymore. IncludedSeparately is now implemented with a custom Expression type.
  • 9269de12ce41d2b76aed507813bf1f011b37157d Minor docs updates
  • 9d5ae161aaca3f73263b22c9c55e4c78c98bf217 Vue docs are done (enough)!
  • cbc4f1f9fbf6cd38216488af7529b3b6a2c5b207 Started on documenting the vuetify components. Knockout out most of the complicated ones, except c-select.
  • 71449faefa4458153c443db8ab088212434ec588 Started coalesce-vue-vuetify docs
  • ccfaee34a795524c9124dbe5344fe20bc4d92144 Made getting-started pages for each stack, and polished up everything as best I could.
  • 2adbc6e338081110723786273b879a261b555613 Fix errors in the docs
  • 3a4dcec175ce48feed79d5cf1170f91cac47da58 Fix bad url
  • 8254c2a18dd3f4a0048b648645efdf94d31ee68d Un-Knockoutify all of the common docs pages.
  • d1462ce0e518dc905b54a5370098c74e27957a9c Update theme
  • 13cf01333934cb5bd59c0d9bbe1f882ee8a47380 Finished viewmodels.rst (for the most part)
  • 3ad94e5885e2ff68f08b008bf2a170fcce934614 Docs WIP - finished api-client, started on viewmodels
  • 64e3b700cadea929649b55c781b202727b573e3b Docs WIP - switching computers.
  • f1161f89b872011d71365719a65f4a1f022b6344 Vue docs (WIP)
  • 9627bc3703c06687cdf9d4df2713968d51e667e8 Refactoring to remove redundant "...ValueTo..." variants of convert/map methods.
  • 5001c3e6ccd6e1e48bd635d7d18fff477205780c Remove ALL the NodeTool@0
  • acae4d82d44aaef1613fa8f286dfd1b131baed9a Fix enum detection
  • 7775c69d167073d1bfa73f43fb26e548cfd75415 Fix infinite calls of getCaller if the calls fail (not found, or otherwise)
  • ebbebee9ec9b04482bd0a7758e0143f171c9d072 Better ux for void-returning methods - don't render 'null' on success.
  • a8c37645868499b4aee22ad4c1edab6c4393464a Silence warnings about not overriding GetHashCode - its intentional.
  • 4b0216a17d2b974ecc9ef92da02d511f19ea2e85 Fix all sorts of issues with equality comparison that were preventing Behaviors from reliably getting picked up.
  • ec40b1a8a0d501e4bf230330ccc2a5603ad1a413 Remove arbitrary restriction on c-select of requiring a foreignKey or referenceNavigation
  • 622e9d1ac79bec41709a3d3d1104b0c89aef13b9 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • cb88ee29f290f902b9244b6051a1a19ea204998c c-select: Fix missing event args for vuuetify callbacks that we manually invoke
  • db7df10996ce9c50b4a16b10b5345eec039cd60c Type model improvements (Fixes #36) (#153)
  • f5afe069b4384a15c19679a475ebb3215f68b298 Default boolean filters to true, as that feels like what you actually are wanting to do most of the time.
  • 5163d32aa0508ab12cfab29b69f2e0d42f21e129 Support boolean filters in c-list-filters.vue
  • 4aec155548e67ec12e2cba6feb958d620dfe0a8a Missed the other half of bindToQueryString for checking metadata.props...
  • c0c7d5beb3f1a2eb3b3e3f8ec2fdb46f5750f654 Datasource metadata uses props, not params.
  • 21738e98fd84baa421b47cd5bb09a713d5efc7fd Stop generating IncludeTree includeTree = null; that won't be used in controllers
  • ef37a1b00b3829c09ee620a3349f60b93070d043 Oops
  • feadb3a3394435f8ade58326d9e4d267f7f2c2e0 Its 2020 and jest still can't deal with imports of es modules.
  • 8593f7669ca7c7fc744a533fd13c10e59fdd4765 Support router.replace with bindToQueryString
  • 0ac72869464b16b9c3363ed8b517161a7cd8a7f5 Whoops, wrong property
  • 28928e4546d00e5badb358271f3bfb1dbf54754a Add pageTitle props to routed components
  • 5c3eb76195e02b25c6045e085e1627943a0b1dd0 Insanely, the pack command uses a different setting for determining which projects to pack.
  • 6bfb19fb8dd9d9b08ce334e3243f7b8b1dd9c93e dotnet pack packs things with IsPackable=false apparently.
  • c8ab5c7b144b0211dd47a0aa015dc697a52a9c84 yaml...
  • 2b2aa3da1d368fb2a5514424fdd31b334169f0bd More refined dotnet restores
  • bb7c64ec0c9cdb66b944b6c934a5ae7f1c96be19 Removed unused dotnet-coalesce artifact
  • 2ac560098753a98403a8a90dd9f27d960b57060c k i guess we still need 2.2
  • 2214d278f94d3869420bcbf27d0b72d34db2be24 Yep, wrong task name
  • a1009301e5f6474f0f0cb2b58978e51c11141bbc Split Coalesce.Web into its own job in the build.
  • 4d8de04de6db200abf5133ab0dbce32a3172ce7d Sourcelink randomly started failing to restore apparently?
  • fcb219514ba01584be5545f368461b157037d5d5 Expose bindKeyToRouteOnCreate
  • f47b23f63de46e955a040c1f6babf1da19f6a1ed Ensure that external types are valid Models when setting them on a ViewModel.
  • ce261a15a7a5f0dca734bf36609531e5877e7d8b Fix inconsistencies in constraints of TDto type parameters
  • 6276702cc2445a08646938b7ada40c872ec95257 Include v-checkbox in .hide-non-error-details
  • 344adf16f4ce3b2ea0e4016b9d1c7b7637bdb8cc Register c-list-page-size, add pageSize prop to c-list-pagination
  • 2baf9b7e699836ef279c764c309ade48dda4b3e7 Fix up c-list-pagination & related components; added c-list-page-size
  • 5da46de6ecb4e1161deccffea65d2c6868a0ec46 coalesce-vue as a non-peer dep of coalesce-vue-vuetify is bad news, as it leads to possible duplicate occurrences of coalesce-vue in bundles.
  • 80e49c1bc0ac0678a1ad4b37edbb52ad4c932a1a c-loader-status - preserve whitespace in error messages.
  • 67ad95a7765795f99a2fe41912fd7258301e10e1 Fix issues with split date/time pickers on DST switch days.
  • df87c17c9cd8055f2aa2bf8c2c0c8824ed0c4b89 Don't write errors when encountering xmldocs that lack a element.
  • db233489ad706a675ec32951f0af2a8df492e5e4 Hide "create" button on admin table when create is disallowed (#150)
  • ae09190ca30247840c97aabc7ad05cb1caf244c0 Generate inherited interface members for interface-based [Service]s
  • 957842a369abc10be063adb981bb623403659783 Don't track property-level dirty flags for dontSerialize properties.
  • f531977b5a933c3c7b5ab7ce453083772b5ebcb7 Don't treat zero value as absent for required validation (#149)
  • 04e48193cfc7b664b0b5703392eac9bc363f631c Roslyn bump so it understands c# 8, among other things.
  • 10dc22e48959c22c000b93b258acfc0361a47df1 Clean up dependencies
  • bed372be186f5c78871dc2361ee22e5676650e23 Support hidden properties in coalesce-vue-vuetify (#148)
  • 4e1f244970f29bde4712c6fff59fe27b6ca372d6 Fix file method parameters with nested objects (both knockout and vue)
  • 37f2fa2adddc925df2e68e512516b4ead78db38a Knockout: Fix form serialization of complex nested objects when uploading a file
  • 9dd1af72db6e459d892581103bd80dc3225a2809 Fix typescript error in coalesce.ko.bindings.ts
  • d25156f4f3b25dafd9547506e121f9aa50b35844 Added file parameters for methods. (#147)
  • 422420dd3600ed038b20827f8b48a809592ac9be Fix generation of enum collections (#146)
  • c33d993a25b991a9f885f5b78c88d8159001b2ac Added some better customization points for datasources and behaviors that govern custom DTOs that use alternate keys as their PK.
  • 42d8f5d235c062f4f283d5cf6d365f9815a05ec6 Fix styling issue of c-loader-status with newer versions of vuetify
  • cd3e8c01f64ad86dce99bf429017dba40d81e09d Correctly discover types from properties and methods of IClassDtos
  • 528e78463fb876418d8f4962f047358a3ca1885c - Fix data sources not generating for models.g.ts when they do generate for metadata.g.ts
  • 3bfba61e53531be22b42ebc6f9c76451f8a2e45f Fix generation error when whitelisting root types that don't include the DbContext but do include an IClassDto<>.
  • 4f748bc541322eeb7e0e7b89e64676a31e471789 Added the ability to whitelist specific root types
  • 0ee0f2d23a9572600c79d64eacd82f7da8992c27 DotnetCliTool doesn't support netcoreapp 3+
  • e85702169e70b52d4554b4c153594248fbe78630 Fix mismatched version of EF in memory provider
  • 16dc005f463ebea3fdfd6a157d997b54a5a61252 I guess we'll just push everything to 3.1 since installing the 3.1 sdk on the build seems to uninstall the 2.2 sdk for some reason
  • 55ccf4291d05a623cb8d535644f5d5ff035f7e1f 3.1 sdk not on current pipelines vm images it would seem
  • 236cec98252564ae65d996f0b567d1b992c09897 Support aspnetcore 3
  • cbf1b5be2aeb2feba146e65c18939592fdfc92ce c-admin-editor: Respect dontSerialize when determining if a prop is readonly.
  • 5c8c004d995464c301300c191417ec957b764384 Remove undefined from RHS of numeric index signature of EnumMembers<>. Causes errors in TS 3.8.1+?
  • 6f88f157dd1244de152f7964794eb3d34bf4c959 Make ctor of ProjectedDtoDataSource public so that when Visual Studio auto-implements a ctor for you, it defaults its visibility to public.
  • d62cdb0e5d5043b3644462628f1ec9b8de76115c Document ProjectedDtoDataSource
  • 9ca22a43af74d82f90955e293fc8d401ef454a8d Create ProjectedDtoDataSource for performing DTO projections via sql queries.
  • 5ab37afa3e7abf71d4d07639d4114b82da934791 add BeforeSaveAsync and BeforeDeleteAsync to StandardBehaviors
  • ebf9141b4e5315facc5853e758569adbce4b275d Code cleanup, fix code that fails tests on linux due to https://github.com/dotnet/corefx/issues/28611
  • 8a1a763d9976abed3759977e30a13b64c497765c Oh.
  • b5b501ddebf862d3f69de838fcb965b395619354 I hate yaml so much.
  • 21716a7ff1eb53ddad1d96faeb31101467c6af32 Don't install a specific sdk version - use whatever is already on the machine. Per https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md, the one we need should already be there.
  • 9cc33448105241c9eb5b184559a84dafbf0a7f6a Yeah, fix that version number too
  • 992cfa744c85c771e9dbcb3a9e4b84de90b8c398 Need to specify sdk version so the build pipeline will have c# 8 available.
  • 27de2b78b893ada128cff2f5b37c7f2a6e5582e2 Add Roslynator, fix many issues.
  • 160142a24d6828f80718169502306420585a7bb0 Make ReflectionRepository.DiscoverCoalescedTypes threadsafe to prevent errors in the tests of projects using Coalesce when those tests are spawning in-memory kestrel servers, and doing so in parallel (since they'll be using the same ReflectionRepository.Global instance).
  • a63d4ab08f3e87a1b0d484f7bf54f0ebeeb57087 - Pull values from querystring when creating via c-admin-editor-page
  • f5a37f9db16ee76c29b84ef19cc740d182f08f6a File reorganization, created c-list-filters.vue
  • 59b58465a639f484d3506bc6cab009dc5d3db38d Some misc changes. Committing before I try out vue 3
  • 0e47f0630bffe7c2fdb1819984ca32ce612d74d7 More admin components goodness.
  • ed45ebf98dda5af712d27049af23ce80b182c97b Build coalesce-vue-vuetify against the compiled local copy of coalesce-vue.
  • ddeb86572dfb5167ded21acbb50fdc34ff3dab1e Lots more work on the vuetify components. I'll be shocked and amazed if this actually builds.
  • cb83afd7105053504cbec49106f30a56a63d9d47 Build, take 10
  • 7f5807fd2a5040b1fec60a3c6788dc6b4ce987d4 Build, take 9
  • 1791d81695b3204e8c707d323a8cc5cb107a6ce0 Still have to build coalesce-vue for coalesce-vue-vuetify's build to work.
  • 64ca1c0ed926baeaf4d341cdf839f59528e0d3fe Update lockfile
  • dc08cb939cacc993bc05eefaf9d373da3ec925cd Coalesce.Web.Vue: Overhaul to not require installing our peer modules (coalesce-vue and coalesce-vue-vuetify) by packing them and then installing from the .tgz. Instead, we symlink them and have a bunch of webpack config (in vue.config.js) and Typescript config (in tsconfig.json) that makes sure that we don't have all the module duplication that was the problem being solved by the pack-and-install approach.
  • 4a4b3f5aaac26b1d84c9ce70b5ed322e84e33e9c Apparently date formats are different between linux and windows, so our tests broke when I switched the builds to the ubuntu agent. https://github.com/JoshClose/CsvHelper/issues/868
  • 781042c19ebd42c4a7a0b1fd41ee12e2786f122f Build, take 4
  • 7045d66ab51a00c55d87c5d04bb6b9eb1a9ab509 Build, take 3
  • c3f97042ae833a0379af1d8784e270a4cc222e6f Build, attempt 2
  • 7a6611c7cbb493721fd879db3aec9ff3165645be Initial add of coalesce-vue-vuetify, a Vuetify-based component library for coalesce-vue.
  • a52dd2cdf50a92c3da193082a457e407a9f4f721 Type setTimeout tokens as any so we don't have to keep dealing with node typings causing them to not be numbers.
  • 37cf31a43d5469b3bfb7eeeea0d5862384a5f189 vue: fix multiple successive cancellations not working.
  • 508cfcc87b796978ceea074415230c86b6e81a7b Make the "Not found" message overridable in datasources.
  • daef9222abf01756530a16426be25792ff217a48 Make searches on date properties handle searches for an entire year
  • da59c40f6de794bd77d937df9dfdeb3ef22172ac Discover enums from data source parameters.
  • b177a9cdd9d80534ec623a8b26ec3b60dde3499d Always save all props if object lacks PK, don't explicitly dirty ViewModels on navigation prop setters if the incoming object already was a ViewModel.
  • ae50080f36eec8801a7f861ff0890c22b09858a9 Vue: Fix typings
  • 7119d65a182b57701e4ecca3993bb03d32e2124d Vue: Fix serialization to DTOs for DateTime (no Offset) values.
  • efe78bd57c637c2239731cfadd8e766c490da925 Use property level dirty flags to determine which props to set from incoming saves, instead of ignoring the whole model if any prop is dirty.
  • 6a9de07a10a397d9356a9709e6de26919f4f9797 Fix some issues with surgical saves.
  • c12ba5f96152614ef26166702b90e9818a15d773 Fix wrong type being codegenned
  • c68ec41d8c68a921d9254a9deb8ea822cb1127a7 Save now supports only changing specific properties that are sent by the client, instead of always updating whole objects.
  • b1bdfdf20242420fc8e6dc046940f8040b56b790 Upgrade Linq.Dynamic, fixing (at least partially) a memory leak caused by EF Core's query caching having a bad interaction with how Linq.Dynamic builds queries.
  • 711d79b8522c26005640eb6d60cd37de20c0c662 Don't assume HttpContext is non-null
  • 8bdc362254a4c4ec7c006e4c0b068003bfb9c798 Ensure that new ViewModel instances will have their collection navigation properties initialized to empty arrays.
  • 075c9fe51cf36014f7af283bda99b3b1a2866757 Allow unexpected parameters to be provided to $invoke() without causing errors.
  • efec3632c1b319ec2c714fed045c9ac4e276d611 Knockout: Fix rebuilding of many-to-many collections - wrong key name was being used.
  • 78078911dffdf60795831ec92e2d1f287eb6517c Minor perf tweak to updateViewModelFromModel
  • 481dcf46a06382e7423851612bf94bfaa5c859d1 Knockout: cancel pending autosave when item is deleted.
  • cbdd78218f5c916232fbd81245fd21e6d592383c Don't update any dirty models in a hierarchy if those dirty models are autosaving.
  • c2d9d203d522cd11c3b25664ada192179ded9819 Don't add callbacks more than once
  • e91e4061ff7b90e44286dc49a0f7fead35ee30da Fix incorrect "Unknown Error" in the event of a network error
  • c351fc7a6cd7ce6e9f1896144b837c125946ddab Move the handling of raw string response errors to the ApiClient layer, rather than the ApiState layer.
  • b606a72a824f800b4a60e621093d2df9fcfcd77e Add helper function that can extract an error message from an error thrown by an ApiClient request.
  • 700f5538626ca244ea7354be390533f277f0fb4f Minor tweaks to global GET request caching
  • 0cb4cd70040ea5a383a59f8232de025cf42a0c69 Added the ability to do global caching of simultaneous GET requests (intended to be utilized by dropdown UI components to avoid spamming the server with duplicate identical requests on page load).
  • 222db3cd3f1f87106254559b4420743be67be4f7 Add a stable object ID to ViewModel instances.
  • 8f16ef34ba93220a6d49fed109396dffb2aed4aa Added ability to add custom rules to ViewModel instances.
  • f17f105599185e90b9a23ce43e2e8bbbbde7a870 Fix minor typing issues
  • c3c86e3174013e538340329c775265a0551aa983 Add validation errors to the view model, use those to control save and autosave.
  • ca4f9e149779d7935fd0677878d3ca0454933d38 Emit property validation metadata
  • 1a835a35608f9f20e569fee17b98e36de0431364 Don't infinitely autosave on failure, don't do a no-pk autosave if a $load is pending, don't enqueue more than one $nextTick callback when lots of property changes happen.
  • ac3c3c64194b22ec8dce5a95af72bbb66d409cba Implemented deep autosave.
  • abb67a52a959ba80af4f3198da2fce7d8e115b0c Fix up foreign keys of related objects when an object being saved gets a new primary key.
  • 68cd94ab7ce627b5a166d4023556d3c8a3ac5a99 Add inverseProperty to the vue metadata.
  • d49adc3e990153b7ad8363a5612ce3874297ad6e Immediately autosave when turning on autosave if the model is dirty.
  • 332eff136b375c1a9b1e52e18a21b752c3e1d2a4 UTF8-BOM strikes again
  • 9679008ef6fc7a69d8170df9ff8d0fd3fd21e7e4 Fix test metadata
  • 93abd4bcf53356196101b23f314f0eebc0c83699 Add DateKind to metadata, use it in date formatting.
  • 080ce04745e7260d78285634fe8c88410745a005 Totally was defeating the point of the .valueOf() checks I added by not actually putting the property assignment after them...
  • e1435ef330b9998d9ebc7871c67955f1e9b3c8ae That's not where that (hasResult) was supposed to go...
  • a531fe1aa0c369c8085a5e9603c0855d1669afa0 Maintain same viewmodel collection instances when loading results from the server.
  • e0e95d00234c1a8c6bf6c357e439d65e6434eb04 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • c7302070dc6be72c9089b64664f1291dbba7460d Add ViewModels for Services
  • 1506193ebea99bce4184ca895738e99eec4ea1e5 Bump mixin-deep from 1.3.1 to 1.3.2 in /src/coalesce-vue
  • 7cdd847d3199eeae3ef2b3f14d16baf95d0e77c7 Fix IsClientSerializable for collections of primitives - it was accidentally broken by the change in behavior of TypeViewModel.IsCollection in 829b492f33. It previously worked with only arrays of primitives. The change made it not work for any collection of primitives. This change makes it work for any kind of collection of primitives.
  • d115946c56188d72faa4f35cc4e084439bd7d495 Fix security behavior issues introduced by aa2bfa5. Also fixes #119.
  • 02cb9e1b4a38e099c5306163ace5d26c7f779c73 Remove RoleMapping. Fixes #97
  • 74b888ed9579b12889517fd0190ac598b4e7c7ed Reorganize tests
  • da2b072edcbbdc22d63dd59a6bba1e698495b3e5 Typescript upgrade, better type for ViewModel ctor.
  • 87a304faa4612e2c8f1340d253dd127f571cff8c Date handling perf improvements
  • ac45148b3a9b0f2c432325cab1a1f86a0eacba49 Add isStatic flag to method metadata.
  • 456190b6e184baec03c38bb37b8f3d341a7de097 Freeze all metadata to prevent unnecessary Vue reactivity.
  • 6a3f374d77e9c43d8883d132c83bef5fc1075220 List default page size should be 10 to match knockout's behavior.
  • 1f21ffdc1ebf58956a267992733a87d9f5c38b6e Use a case-insensitive comparer for the Filter dictionary on FilterParameters
  • f2364566aeaeee940d3d26869696d88d8f6a910f Perform reference navigation and FK fixups in the ViewModel setters so that code outside of $loadFromDto() calls can benefit.
  • 7fbcb7a2e00b838c5166229e54f8d2d31b9c6a60 when onFulfilled/onRejected callbacks return promises, await them.
  • 43155bd343ce646ef669d962dd625b65dbbc7c27 Add a displayName prop to the manyToMany metadata.
  • 0d6103f739cbb9761b4375cd9b7665be626c287c Don't recursively perform conversion into models of objects that already look like valid models.
  • c8e6d612a368117eb361d9fc5239fe56fa34ca90 Expose ViewModelFactory so I can use it in components (creating ViewModels for many-to-many join entities form the select-multiple component).
  • 2705a2b275fc1629894c9e6b31f80f8822f9c5a0 Many-to-many metadata was incomplete, missing information about the near side of the relationship.
  • 4eaaab582dd96638b9917576da95130bce3f5070 Expose the parameters-to-dto method (allows creating watchers against parameter objects in userspace that are much more consistent)
  • ea769897827da31154c5a79115324e82804c9747 Performance: generated api callers should also be lazily created.
  • ed3b76e3b2ae653016c0b66c959bb699b35517a0 Performance: lazily-instantiate API callers since their creation is a little expensive.
  • ff29517f6f9c3d1dfb51da863f74a71e350b08c3 Performance: Removed some unnecessary closures and function calls from hot-path model.ts code.
  • a3e972b51f3ac193c2288979e53d1f0cc7e96eff Switching to a more traditional way of handling $isDirty. The old way was far too memory/cpu intensive.
  • 1589a6325726698b9c9c38c0413304ccdb7ac04f fix ViewModelCollection reactivity for newly-added items in a weird edge case (see description in the test that was added in this commit).
  • e3aa94a1d39139a84095bfd7b03757dd3029563d Fix handling of $delete when item has no primary key - the item still needs to be removed from the parent collection.
  • 553cd3c94e999d9861a5c2fa71e307e76df4ebc0 ListViewModels now provide ViewModel instances through $items.
  • c0521afec9444529252f1df1ff609ea598b84b2b Add getter-only props for many-to-many collections.
  • 950520f316c6e83d28d6fd9512b6b8bb3ae39b57 Fix issue where existing ViewModel instances weren't preserved when using the ViewModel ctor's initialData param.
  • 7a61195cdff609b5887410aa6138e1440e8fc05e Handle recursive object structures with $loadFromModel/updateViewModelFromModel
  • 773430f7464583b35741f5aea410af57a9ff88fe Fix ViewModelCollections not being reactive for .push() calls (was mistakenly using Array.prototype.push, instead of the actual push from the instance's prototype which will end up being the one that Vue provides).
  • 0efda59fa9b40b2ab5423828ec6de4de3eb46af3 Added distanceFromNow options for valueDisplay
  • 19585214ef02b0903544c2c82b3e3c4b3e029087 Fixed a bug that was causing FK values to get set to undefined when both (a) their name did not match that of their related PK, and (b) the corresponding navigation prop of the FK is declared in the metadata AFTER the FK itself on the parent's props object.

This list of changes was auto generated.

v3.0.0-rc.20200805.2

3 years ago

Changes:

  • 6497b3ef8e4cfad8feb0a6142fb78c94fd790061 Fix vue metadata for min/max validation rules
  • 24351029832d172b18be97d83e35799f9ac21bbe Restore the admin table buttons - more got deleted when removing the CSV endpoints than was intended.
  • 7fefdf984f2205301b028ef5de931558ea29561d Fix #52 - Prevent local vars in controller actions generated for methods from conflicting with the method's parameters
  • 3d94233bb84ef052c5e32b1b0b09b9c2b04afe18 Fix #13 - Accept string[] for roles on SecurityAttribute
  • 681d5c8f1549d87ac2b962f1c3c6cd68d67bc0d5 Fix symbol generation for IntelliTect.Coalesce.Cli.csproj
  • 1cf70f63946cf0c47124e1f82d54d266fd88ad23 Update docs for #169
  • 37d18f38fccf03b7f1b1da2403a09a128d8dde45 [breaking] Fix #95 - removed the CSV endpoints
  • 3e232a0d5c0638633da69d0e18828fe6a278017c [breaking] Fix #123 - Added implicit conversion from T to ItemResult<T>
  • d5c37f8e67c42b10723513641e38a270bfb613f3 [breaking] Fix #169 - Omit "Async" suffix from generated controller actions and Typescript
  • 05667ca6642f6d28c43906112fdb0fe641c2a295 Fix #158 - parsing empty/blank as a number should result in null, not 0.
See More
  • da91c7206c2665153d884e9622940a97a51c50c9 Fix #164 - filter params not being removed the first time the X is clicked.
  • 55328141e46672307ca3943650fec4ef5c2b2714 Fix #166 - Don't emit CSV endpoints if reads are disallowed.
  • 9b1195d8f3ca6bd35ff9c3d745b1934d5c4a3a51 Fix #172, #162 - Allow column reordering on c-table, and documentation fixes.
  • 8d50c5883d6e6d01bb9bd5e509d54f08fedc2889 Fix #160 - throw a validation error for static [Service] classes.
  • 107d3471ad3713f274c3653d60e3f3b1f1a86c53 Bump lodash from 4.17.15 to 4.17.19 in /src/coalesce-vue (#170)
  • 79159e3f2d07c31e308af4d92fd8630205bd702d Make InverseProperty slightly more strict to reduce the chance that it could go into infinite recursion (by avoiding checks against Role when possible).
  • c0f0005bdf3ade7ab87594394074967e2833d625 Prevent InverseProperty from incorrectly picking up the wrong type of property when detecting by convention.
  • d631280dac5e870351b9efe5fce5397efc3348b3 Vue: Added some of the ClientValidation rules that make sense.
  • 8593d27ed83cd4730619cc9e1ea379e8afd90ab2 Document support of DatabaseGenerated attribute. Fix https://github.com/dotnet/roslyn/issues/37379
  • 5539d4c20f60826c0fdd3879896a2b8dc8af1f81 Hide bullet point from errors in c-loader-status if there is only one error.
  • 8f94e55865c744d7cb16d5aaf550bf4c17724712 [breaking] Added support for non-database-generated primary keys
  • dfff83c19bc49c5b4b303890606c0b23eae3637f Add ContinuousIntegrationBuild msbuild property
  • 008dedb22b701bdb525ab61237d4847acb40e4bd Create Snupkegs (.snupkg symbol packages)
  • f018e9ef0cb7f9dd4a93233674ad6d01c4bfd9d5 Added C# 8 nullability to the IntelliTect.Coalesce project. (#168)
  • fa73569e29d1687b21522f09b1180504e45f3fc0 Attempting to fix sourcelink
  • 5b3f7de42a03bfedf38ae8807d0cd945ae5bdd7d Bump swashbuckle version (#161)
  • b74b8c4a009558cfbe4acc60a72f8b0edd87f511 Added support for editable table mode for c-admin-table and c-table
  • b8a4b0ea812d908605b15b1d76b241b1bb215221 Fix event used by v-file-input when deleted to by c-input
  • 48f680f023b53e2c217181fbf2f3b061aff38877 Added pageSizes param to c-admin-table
  • 1507f3b6bb00787560892ccf0748b239fabe8b3a That was way too much effort - just adding date-fns-tz as a hard dependency.
  • 605afb8b18fd36a94f75e728e4f897d44d5b51a5 Make the tests run
  • 8c5d9751f1f126a319e0153c2b64814a844e0059 Totally different approach now for date-fns-tz to avoid absurd warnings from webpack about optional modules being missing...
  • ca8bbfce0c7bec8d0fee25feb1d80865a44b85c2 Fix optional import so webpack doesn't freak out.
  • cdd60a7d79d4dd6e625a77db6b0e7a017bd99c36 That was supposed to be a peer dep, not an optional dep.
  • 44896c406940f3f0552bf76909e79b30fa3e8805 Wasn't an issue with the node version, it was an issue with date-fns-tz being entirely unintuitive.
  • ade6fb9fc91fa0e53836e2accdc96c7e47e83c70 Try again with latest node
  • 66bedae483621224875a3db22ecd627ec44538ba Optionally support date-fns-tz for formatting dates.
  • 0012244819b6b886dbcd5f38757e776fb0874404 bindKeyToRouteOnCreate - allow specifying a route name
  • b183ad33279b0e92a2b34f90142c0e5ff49ec847 npm audit fix --force
  • c1e5513a81436de5c7582e5165e9b1c2f5caa523 Make c-loader-status resilient against null|undefined
  • 5b006d04c166758bc75cfeaf29d1f9c075d7d1b8 Fix pagination issues from last commit
  • 9cb4cebd3bd9a01bf734655baae9a65ebe6d18f5 Support ListResults that have an indeterminate total count (i.e. a TotalCount of -1)
  • a9fe9d263ef35d398c62b690a28b2f44d87aeca1 Remove unnecessary prop type check on c-input
  • 99263ebaf74d5221b630b3f6b97950387d4d970e - Add method to API callers to reset their args objects
  • d1c0bb94dc37583d2eaa3caf4e850605751c709e Fix Vue codegen for date-returning methods.
  • 268e49a065678905a73c6de9275e218d694fc4ee Workaround https://github.com/nodejs/node/issues/3285256
  • 35237754544e47a96bba01669db976336751124e Fix bug in safari with parsing ISO date strings that lack timezones - Safari's Date constructor incorrectly assumes a UTC timezone rather than a local timezone.
  • 4205d96bf762a2e5f9fd195e9ec7378fb425ba96 Prevent NullReferenceException when searching entities that lack a valid fallback search property ("Name", or a PK)
  • 8e30d300aaf59a4ff318aaa50fe56b6107f386e8 Use ICustomAttributeProvider.IsDefined in HasAttribute to avoid allocations.
  • c1887b38b18020813133020b221181a4ba60c152 Make multiline comments that come from c# xmldoc comments not ugly.
  • 0662b26aeccf00b690fe40fc90cf18a65818e0db Add additional string search methods (#165)
  • 19ac04c634073ac76d15a1f920b9f115c239daea Revert "Fix bindToQueryString - resetting values to null didn't work"
  • 5d05aca4cacfce7ebd939c488de5ac78e4c4d460 Fix bindToQueryString - resetting values to null didn't work
  • d862034c116f93cc44ee81ccbd95789f66c996c4 Fix manually resolved routes so they work when basePath is used with vue-router.
  • 1cc0e692cd434cf8a1c2f80ff9f62b0a72b5c82f Allow auto-closing the date picker.
  • 23358684055e34064e0644528e09905081d0ef33 Fix #159 - Render save/delete errors from c-select-many-to-many.vue.
  • fe24ecdc353dddd2f50cdaf323ea9dc3788c1acb c-input => c-select (thanks @COsborn2)
  • ceb24ee37e4b8933a6ad68777d9df4a6a3925794 Refactor out IncludableQueryProvider so we aren't dependent on EF internals anymore. IncludedSeparately is now implemented with a custom Expression type.
  • 9269de12ce41d2b76aed507813bf1f011b37157d Minor docs updates
  • 9d5ae161aaca3f73263b22c9c55e4c78c98bf217 Vue docs are done (enough)!
  • cbc4f1f9fbf6cd38216488af7529b3b6a2c5b207 Started on documenting the vuetify components. Knockout out most of the complicated ones, except c-select.
  • 71449faefa4458153c443db8ab088212434ec588 Started coalesce-vue-vuetify docs
  • ccfaee34a795524c9124dbe5344fe20bc4d92144 Made getting-started pages for each stack, and polished up everything as best I could.
  • 2adbc6e338081110723786273b879a261b555613 Fix errors in the docs
  • 3a4dcec175ce48feed79d5cf1170f91cac47da58 Fix bad url
  • 8254c2a18dd3f4a0048b648645efdf94d31ee68d Un-Knockoutify all of the common docs pages.
  • d1462ce0e518dc905b54a5370098c74e27957a9c Update theme
  • 13cf01333934cb5bd59c0d9bbe1f882ee8a47380 Finished viewmodels.rst (for the most part)
  • 3ad94e5885e2ff68f08b008bf2a170fcce934614 Docs WIP - finished api-client, started on viewmodels
  • 64e3b700cadea929649b55c781b202727b573e3b Docs WIP - switching computers.
  • f1161f89b872011d71365719a65f4a1f022b6344 Vue docs (WIP)
  • 9627bc3703c06687cdf9d4df2713968d51e667e8 Refactoring to remove redundant "...ValueTo..." variants of convert/map methods.
  • 5001c3e6ccd6e1e48bd635d7d18fff477205780c Remove ALL the NodeTool@0
  • acae4d82d44aaef1613fa8f286dfd1b131baed9a Fix enum detection
  • 7775c69d167073d1bfa73f43fb26e548cfd75415 Fix infinite calls of getCaller if the calls fail (not found, or otherwise)
  • ebbebee9ec9b04482bd0a7758e0143f171c9d072 Better ux for void-returning methods - don't render 'null' on success.
  • a8c37645868499b4aee22ad4c1edab6c4393464a Silence warnings about not overriding GetHashCode - its intentional.
  • 4b0216a17d2b974ecc9ef92da02d511f19ea2e85 Fix all sorts of issues with equality comparison that were preventing Behaviors from reliably getting picked up.
  • ec40b1a8a0d501e4bf230330ccc2a5603ad1a413 Remove arbitrary restriction on c-select of requiring a foreignKey or referenceNavigation
  • 622e9d1ac79bec41709a3d3d1104b0c89aef13b9 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • cb88ee29f290f902b9244b6051a1a19ea204998c c-select: Fix missing event args for vuuetify callbacks that we manually invoke
  • db7df10996ce9c50b4a16b10b5345eec039cd60c Type model improvements (Fixes #36) (#153)
  • f5afe069b4384a15c19679a475ebb3215f68b298 Default boolean filters to true, as that feels like what you actually are wanting to do most of the time.
  • 5163d32aa0508ab12cfab29b69f2e0d42f21e129 Support boolean filters in c-list-filters.vue
  • 4aec155548e67ec12e2cba6feb958d620dfe0a8a Missed the other half of bindToQueryString for checking metadata.props...
  • c0c7d5beb3f1a2eb3b3e3f8ec2fdb46f5750f654 Datasource metadata uses props, not params.
  • 21738e98fd84baa421b47cd5bb09a713d5efc7fd Stop generating IncludeTree includeTree = null; that won't be used in controllers
  • ef37a1b00b3829c09ee620a3349f60b93070d043 Oops
  • feadb3a3394435f8ade58326d9e4d267f7f2c2e0 Its 2020 and jest still can't deal with imports of es modules.
  • 8593f7669ca7c7fc744a533fd13c10e59fdd4765 Support router.replace with bindToQueryString
  • 0ac72869464b16b9c3363ed8b517161a7cd8a7f5 Whoops, wrong property
  • 28928e4546d00e5badb358271f3bfb1dbf54754a Add pageTitle props to routed components
  • 5c3eb76195e02b25c6045e085e1627943a0b1dd0 Insanely, the pack command uses a different setting for determining which projects to pack.
  • 6bfb19fb8dd9d9b08ce334e3243f7b8b1dd9c93e dotnet pack packs things with IsPackable=false apparently.
  • c8ab5c7b144b0211dd47a0aa015dc697a52a9c84 yaml...
  • 2b2aa3da1d368fb2a5514424fdd31b334169f0bd More refined dotnet restores
  • bb7c64ec0c9cdb66b944b6c934a5ae7f1c96be19 Removed unused dotnet-coalesce artifact
  • 2ac560098753a98403a8a90dd9f27d960b57060c k i guess we still need 2.2
  • 2214d278f94d3869420bcbf27d0b72d34db2be24 Yep, wrong task name
  • a1009301e5f6474f0f0cb2b58978e51c11141bbc Split Coalesce.Web into its own job in the build.
  • 4d8de04de6db200abf5133ab0dbce32a3172ce7d Sourcelink randomly started failing to restore apparently?
  • fcb219514ba01584be5545f368461b157037d5d5 Expose bindKeyToRouteOnCreate
  • f47b23f63de46e955a040c1f6babf1da19f6a1ed Ensure that external types are valid Models when setting them on a ViewModel.
  • ce261a15a7a5f0dca734bf36609531e5877e7d8b Fix inconsistencies in constraints of TDto type parameters
  • 6276702cc2445a08646938b7ada40c872ec95257 Include v-checkbox in .hide-non-error-details
  • 344adf16f4ce3b2ea0e4016b9d1c7b7637bdb8cc Register c-list-page-size, add pageSize prop to c-list-pagination
  • 2baf9b7e699836ef279c764c309ade48dda4b3e7 Fix up c-list-pagination & related components; added c-list-page-size
  • 5da46de6ecb4e1161deccffea65d2c6868a0ec46 coalesce-vue as a non-peer dep of coalesce-vue-vuetify is bad news, as it leads to possible duplicate occurrences of coalesce-vue in bundles.
  • 80e49c1bc0ac0678a1ad4b37edbb52ad4c932a1a c-loader-status - preserve whitespace in error messages.
  • 67ad95a7765795f99a2fe41912fd7258301e10e1 Fix issues with split date/time pickers on DST switch days.
  • df87c17c9cd8055f2aa2bf8c2c0c8824ed0c4b89 Don't write errors when encountering xmldocs that lack a element.
  • db233489ad706a675ec32951f0af2a8df492e5e4 Hide "create" button on admin table when create is disallowed (#150)
  • ae09190ca30247840c97aabc7ad05cb1caf244c0 Generate inherited interface members for interface-based [Service]s
  • 957842a369abc10be063adb981bb623403659783 Don't track property-level dirty flags for dontSerialize properties.
  • f531977b5a933c3c7b5ab7ce453083772b5ebcb7 Don't treat zero value as absent for required validation (#149)
  • 04e48193cfc7b664b0b5703392eac9bc363f631c Roslyn bump so it understands c# 8, among other things.
  • 10dc22e48959c22c000b93b258acfc0361a47df1 Clean up dependencies
  • bed372be186f5c78871dc2361ee22e5676650e23 Support hidden properties in coalesce-vue-vuetify (#148)
  • 4e1f244970f29bde4712c6fff59fe27b6ca372d6 Fix file method parameters with nested objects (both knockout and vue)
  • 37f2fa2adddc925df2e68e512516b4ead78db38a Knockout: Fix form serialization of complex nested objects when uploading a file
  • 9dd1af72db6e459d892581103bd80dc3225a2809 Fix typescript error in coalesce.ko.bindings.ts
  • d25156f4f3b25dafd9547506e121f9aa50b35844 Added file parameters for methods. (#147)
  • 422420dd3600ed038b20827f8b48a809592ac9be Fix generation of enum collections (#146)
  • c33d993a25b991a9f885f5b78c88d8159001b2ac Added some better customization points for datasources and behaviors that govern custom DTOs that use alternate keys as their PK.
  • 42d8f5d235c062f4f283d5cf6d365f9815a05ec6 Fix styling issue of c-loader-status with newer versions of vuetify
  • cd3e8c01f64ad86dce99bf429017dba40d81e09d Correctly discover types from properties and methods of IClassDtos
  • 528e78463fb876418d8f4962f047358a3ca1885c - Fix data sources not generating for models.g.ts when they do generate for metadata.g.ts
  • 3bfba61e53531be22b42ebc6f9c76451f8a2e45f Fix generation error when whitelisting root types that don't include the DbContext but do include an IClassDto<>.
  • 4f748bc541322eeb7e0e7b89e64676a31e471789 Added the ability to whitelist specific root types
  • 0ee0f2d23a9572600c79d64eacd82f7da8992c27 DotnetCliTool doesn't support netcoreapp 3+
  • e85702169e70b52d4554b4c153594248fbe78630 Fix mismatched version of EF in memory provider
  • 16dc005f463ebea3fdfd6a157d997b54a5a61252 I guess we'll just push everything to 3.1 since installing the 3.1 sdk on the build seems to uninstall the 2.2 sdk for some reason
  • 55ccf4291d05a623cb8d535644f5d5ff035f7e1f 3.1 sdk not on current pipelines vm images it would seem
  • 236cec98252564ae65d996f0b567d1b992c09897 Support aspnetcore 3
  • cbf1b5be2aeb2feba146e65c18939592fdfc92ce c-admin-editor: Respect dontSerialize when determining if a prop is readonly.
  • 5c8c004d995464c301300c191417ec957b764384 Remove undefined from RHS of numeric index signature of EnumMembers<>. Causes errors in TS 3.8.1+?
  • 6f88f157dd1244de152f7964794eb3d34bf4c959 Make ctor of ProjectedDtoDataSource public so that when Visual Studio auto-implements a ctor for you, it defaults its visibility to public.
  • d62cdb0e5d5043b3644462628f1ec9b8de76115c Document ProjectedDtoDataSource
  • 9ca22a43af74d82f90955e293fc8d401ef454a8d Create ProjectedDtoDataSource for performing DTO projections via sql queries.
  • 5ab37afa3e7abf71d4d07639d4114b82da934791 add BeforeSaveAsync and BeforeDeleteAsync to StandardBehaviors
  • ebf9141b4e5315facc5853e758569adbce4b275d Code cleanup, fix code that fails tests on linux due to https://github.com/dotnet/corefx/issues/28611
  • 8a1a763d9976abed3759977e30a13b64c497765c Oh.
  • b5b501ddebf862d3f69de838fcb965b395619354 I hate yaml so much.
  • 21716a7ff1eb53ddad1d96faeb31101467c6af32 Don't install a specific sdk version - use whatever is already on the machine. Per https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md, the one we need should already be there.
  • 9cc33448105241c9eb5b184559a84dafbf0a7f6a Yeah, fix that version number too
  • 992cfa744c85c771e9dbcb3a9e4b84de90b8c398 Need to specify sdk version so the build pipeline will have c# 8 available.
  • 27de2b78b893ada128cff2f5b37c7f2a6e5582e2 Add Roslynator, fix many issues.
  • 160142a24d6828f80718169502306420585a7bb0 Make ReflectionRepository.DiscoverCoalescedTypes threadsafe to prevent errors in the tests of projects using Coalesce when those tests are spawning in-memory kestrel servers, and doing so in parallel (since they'll be using the same ReflectionRepository.Global instance).
  • a63d4ab08f3e87a1b0d484f7bf54f0ebeeb57087 - Pull values from querystring when creating via c-admin-editor-page
  • f5a37f9db16ee76c29b84ef19cc740d182f08f6a File reorganization, created c-list-filters.vue
  • 59b58465a639f484d3506bc6cab009dc5d3db38d Some misc changes. Committing before I try out vue 3
  • 0e47f0630bffe7c2fdb1819984ca32ce612d74d7 More admin components goodness.
  • ed45ebf98dda5af712d27049af23ce80b182c97b Build coalesce-vue-vuetify against the compiled local copy of coalesce-vue.
  • ddeb86572dfb5167ded21acbb50fdc34ff3dab1e Lots more work on the vuetify components. I'll be shocked and amazed if this actually builds.
  • cb83afd7105053504cbec49106f30a56a63d9d47 Build, take 10
  • 7f5807fd2a5040b1fec60a3c6788dc6b4ce987d4 Build, take 9
  • 1791d81695b3204e8c707d323a8cc5cb107a6ce0 Still have to build coalesce-vue for coalesce-vue-vuetify's build to work.
  • 64ca1c0ed926baeaf4d341cdf839f59528e0d3fe Update lockfile
  • dc08cb939cacc993bc05eefaf9d373da3ec925cd Coalesce.Web.Vue: Overhaul to not require installing our peer modules (coalesce-vue and coalesce-vue-vuetify) by packing them and then installing from the .tgz. Instead, we symlink them and have a bunch of webpack config (in vue.config.js) and Typescript config (in tsconfig.json) that makes sure that we don't have all the module duplication that was the problem being solved by the pack-and-install approach.
  • 4a4b3f5aaac26b1d84c9ce70b5ed322e84e33e9c Apparently date formats are different between linux and windows, so our tests broke when I switched the builds to the ubuntu agent. https://github.com/JoshClose/CsvHelper/issues/868
  • 781042c19ebd42c4a7a0b1fd41ee12e2786f122f Build, take 4
  • 7045d66ab51a00c55d87c5d04bb6b9eb1a9ab509 Build, take 3
  • c3f97042ae833a0379af1d8784e270a4cc222e6f Build, attempt 2
  • 7a6611c7cbb493721fd879db3aec9ff3165645be Initial add of coalesce-vue-vuetify, a Vuetify-based component library for coalesce-vue.
  • a52dd2cdf50a92c3da193082a457e407a9f4f721 Type setTimeout tokens as any so we don't have to keep dealing with node typings causing them to not be numbers.
  • 37cf31a43d5469b3bfb7eeeea0d5862384a5f189 vue: fix multiple successive cancellations not working.
  • 508cfcc87b796978ceea074415230c86b6e81a7b Make the "Not found" message overridable in datasources.
  • daef9222abf01756530a16426be25792ff217a48 Make searches on date properties handle searches for an entire year
  • da59c40f6de794bd77d937df9dfdeb3ef22172ac Discover enums from data source parameters.
  • b177a9cdd9d80534ec623a8b26ec3b60dde3499d Always save all props if object lacks PK, don't explicitly dirty ViewModels on navigation prop setters if the incoming object already was a ViewModel.
  • ae50080f36eec8801a7f861ff0890c22b09858a9 Vue: Fix typings
  • 7119d65a182b57701e4ecca3993bb03d32e2124d Vue: Fix serialization to DTOs for DateTime (no Offset) values.
  • efe78bd57c637c2239731cfadd8e766c490da925 Use property level dirty flags to determine which props to set from incoming saves, instead of ignoring the whole model if any prop is dirty.
  • 6a9de07a10a397d9356a9709e6de26919f4f9797 Fix some issues with surgical saves.
  • c12ba5f96152614ef26166702b90e9818a15d773 Fix wrong type being codegenned
  • c68ec41d8c68a921d9254a9deb8ea822cb1127a7 Save now supports only changing specific properties that are sent by the client, instead of always updating whole objects.
  • b1bdfdf20242420fc8e6dc046940f8040b56b790 Upgrade Linq.Dynamic, fixing (at least partially) a memory leak caused by EF Core's query caching having a bad interaction with how Linq.Dynamic builds queries.
  • 711d79b8522c26005640eb6d60cd37de20c0c662 Don't assume HttpContext is non-null
  • 8bdc362254a4c4ec7c006e4c0b068003bfb9c798 Ensure that new ViewModel instances will have their collection navigation properties initialized to empty arrays.
  • 075c9fe51cf36014f7af283bda99b3b1a2866757 Allow unexpected parameters to be provided to $invoke() without causing errors.
  • efec3632c1b319ec2c714fed045c9ac4e276d611 Knockout: Fix rebuilding of many-to-many collections - wrong key name was being used.
  • 78078911dffdf60795831ec92e2d1f287eb6517c Minor perf tweak to updateViewModelFromModel
  • 481dcf46a06382e7423851612bf94bfaa5c859d1 Knockout: cancel pending autosave when item is deleted.
  • cbdd78218f5c916232fbd81245fd21e6d592383c Don't update any dirty models in a hierarchy if those dirty models are autosaving.
  • c2d9d203d522cd11c3b25664ada192179ded9819 Don't add callbacks more than once
  • e91e4061ff7b90e44286dc49a0f7fead35ee30da Fix incorrect "Unknown Error" in the event of a network error
  • c351fc7a6cd7ce6e9f1896144b837c125946ddab Move the handling of raw string response errors to the ApiClient layer, rather than the ApiState layer.
  • b606a72a824f800b4a60e621093d2df9fcfcd77e Add helper function that can extract an error message from an error thrown by an ApiClient request.
  • 700f5538626ca244ea7354be390533f277f0fb4f Minor tweaks to global GET request caching
  • 0cb4cd70040ea5a383a59f8232de025cf42a0c69 Added the ability to do global caching of simultaneous GET requests (intended to be utilized by dropdown UI components to avoid spamming the server with duplicate identical requests on page load).
  • 222db3cd3f1f87106254559b4420743be67be4f7 Add a stable object ID to ViewModel instances.
  • 8f16ef34ba93220a6d49fed109396dffb2aed4aa Added ability to add custom rules to ViewModel instances.
  • f17f105599185e90b9a23ce43e2e8bbbbde7a870 Fix minor typing issues
  • c3c86e3174013e538340329c775265a0551aa983 Add validation errors to the view model, use those to control save and autosave.
  • ca4f9e149779d7935fd0677878d3ca0454933d38 Emit property validation metadata
  • 1a835a35608f9f20e569fee17b98e36de0431364 Don't infinitely autosave on failure, don't do a no-pk autosave if a $load is pending, don't enqueue more than one $nextTick callback when lots of property changes happen.
  • ac3c3c64194b22ec8dce5a95af72bbb66d409cba Implemented deep autosave.
  • abb67a52a959ba80af4f3198da2fce7d8e115b0c Fix up foreign keys of related objects when an object being saved gets a new primary key.
  • 68cd94ab7ce627b5a166d4023556d3c8a3ac5a99 Add inverseProperty to the vue metadata.
  • d49adc3e990153b7ad8363a5612ce3874297ad6e Immediately autosave when turning on autosave if the model is dirty.
  • 332eff136b375c1a9b1e52e18a21b752c3e1d2a4 UTF8-BOM strikes again
  • 9679008ef6fc7a69d8170df9ff8d0fd3fd21e7e4 Fix test metadata
  • 93abd4bcf53356196101b23f314f0eebc0c83699 Add DateKind to metadata, use it in date formatting.
  • 080ce04745e7260d78285634fe8c88410745a005 Totally was defeating the point of the .valueOf() checks I added by not actually putting the property assignment after them...
  • e1435ef330b9998d9ebc7871c67955f1e9b3c8ae That's not where that (hasResult) was supposed to go...
  • a531fe1aa0c369c8085a5e9603c0855d1669afa0 Maintain same viewmodel collection instances when loading results from the server.
  • e0e95d00234c1a8c6bf6c357e439d65e6434eb04 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • c7302070dc6be72c9089b64664f1291dbba7460d Add ViewModels for Services
  • 1506193ebea99bce4184ca895738e99eec4ea1e5 Bump mixin-deep from 1.3.1 to 1.3.2 in /src/coalesce-vue
  • 7cdd847d3199eeae3ef2b3f14d16baf95d0e77c7 Fix IsClientSerializable for collections of primitives - it was accidentally broken by the change in behavior of TypeViewModel.IsCollection in 829b492f33. It previously worked with only arrays of primitives. The change made it not work for any collection of primitives. This change makes it work for any kind of collection of primitives.
  • d115946c56188d72faa4f35cc4e084439bd7d495 Fix security behavior issues introduced by aa2bfa5. Also fixes #119.
  • 02cb9e1b4a38e099c5306163ace5d26c7f779c73 Remove RoleMapping. Fixes #97
  • 74b888ed9579b12889517fd0190ac598b4e7c7ed Reorganize tests
  • da2b072edcbbdc22d63dd59a6bba1e698495b3e5 Typescript upgrade, better type for ViewModel ctor.
  • 87a304faa4612e2c8f1340d253dd127f571cff8c Date handling perf improvements
  • ac45148b3a9b0f2c432325cab1a1f86a0eacba49 Add isStatic flag to method metadata.
  • 456190b6e184baec03c38bb37b8f3d341a7de097 Freeze all metadata to prevent unnecessary Vue reactivity.
  • 6a3f374d77e9c43d8883d132c83bef5fc1075220 List default page size should be 10 to match knockout's behavior.
  • 1f21ffdc1ebf58956a267992733a87d9f5c38b6e Use a case-insensitive comparer for the Filter dictionary on FilterParameters
  • f2364566aeaeee940d3d26869696d88d8f6a910f Perform reference navigation and FK fixups in the ViewModel setters so that code outside of $loadFromDto() calls can benefit.
  • 7fbcb7a2e00b838c5166229e54f8d2d31b9c6a60 when onFulfilled/onRejected callbacks return promises, await them.
  • 43155bd343ce646ef669d962dd625b65dbbc7c27 Add a displayName prop to the manyToMany metadata.
  • 0d6103f739cbb9761b4375cd9b7665be626c287c Don't recursively perform conversion into models of objects that already look like valid models.
  • c8e6d612a368117eb361d9fc5239fe56fa34ca90 Expose ViewModelFactory so I can use it in components (creating ViewModels for many-to-many join entities form the select-multiple component).
  • 2705a2b275fc1629894c9e6b31f80f8822f9c5a0 Many-to-many metadata was incomplete, missing information about the near side of the relationship.
  • 4eaaab582dd96638b9917576da95130bce3f5070 Expose the parameters-to-dto method (allows creating watchers against parameter objects in userspace that are much more consistent)
  • ea769897827da31154c5a79115324e82804c9747 Performance: generated api callers should also be lazily created.
  • ed3b76e3b2ae653016c0b66c959bb699b35517a0 Performance: lazily-instantiate API callers since their creation is a little expensive.
  • ff29517f6f9c3d1dfb51da863f74a71e350b08c3 Performance: Removed some unnecessary closures and function calls from hot-path model.ts code.
  • a3e972b51f3ac193c2288979e53d1f0cc7e96eff Switching to a more traditional way of handling $isDirty. The old way was far too memory/cpu intensive.
  • 1589a6325726698b9c9c38c0413304ccdb7ac04f fix ViewModelCollection reactivity for newly-added items in a weird edge case (see description in the test that was added in this commit).
  • e3aa94a1d39139a84095bfd7b03757dd3029563d Fix handling of $delete when item has no primary key - the item still needs to be removed from the parent collection.
  • 553cd3c94e999d9861a5c2fa71e307e76df4ebc0 ListViewModels now provide ViewModel instances through $items.
  • c0521afec9444529252f1df1ff609ea598b84b2b Add getter-only props for many-to-many collections.
  • 950520f316c6e83d28d6fd9512b6b8bb3ae39b57 Fix issue where existing ViewModel instances weren't preserved when using the ViewModel ctor's initialData param.
  • 7a61195cdff609b5887410aa6138e1440e8fc05e Handle recursive object structures with $loadFromModel/updateViewModelFromModel
  • 773430f7464583b35741f5aea410af57a9ff88fe Fix ViewModelCollections not being reactive for .push() calls (was mistakenly using Array.prototype.push, instead of the actual push from the instance's prototype which will end up being the one that Vue provides).
  • 0efda59fa9b40b2ab5423828ec6de4de3eb46af3 Added distanceFromNow options for valueDisplay
  • 19585214ef02b0903544c2c82b3e3c4b3e029087 Fixed a bug that was causing FK values to get set to undefined when both (a) their name did not match that of their related PK, and (b) the corresponding navigation prop of the FK is declared in the metadata AFTER the FK itself on the parent's props object.
  • b2ffbd55bcd09380bedd6e6708506ddedc835848 Make args objects on callers w/ args reactive.
  • 774099df48d0a4206fc3ccf3893a9c7383ff63b9 make the date format configurable for the display visitor
  • 1791ac469953c07f1ab99e7f2ca6d1f602121b23 Fix bad method name for $previousPage(), add more paging properties to list viewmodels.
  • 12ab7094eaaec5e43ba62829802c4325be913dd6 Failed requests should reject their promise, not resolve it with the error.
  • 5100c372f5064379941e6a4dc1e9a5b304b54c22 Despite my recollection that I did so, apparently I didn't actually regen the knockout project.
  • 2f79cd7f2aa9fe896b57a3ca6eb97022f3a481ab Fix #134 - Non-navigation collection properties are generating $addTo methods
  • 820a96062a161ff5b1e99c07d099054d542416af Fix missing semicolon, regen.
  • 961fcd2cca2af6ff7b5a48bef7cca91ba1410709 Remove BOMs from the start of our yaml files. I suspect that's what was causing them to break.
  • 0883a7e372e56eabb70c22c2d7046eb93ee0f3b9 Trying different syntax to fix the build maybe?
  • 829b492f3347b3b21c98f6444a52ad367fe291a3 Allow collection types in method parameters for Knockout. Fixes #135
  • c63d639a3ead5cff95bd9d198f5a8a97ca6e4b17 Bump fstream from 1.0.11 to 1.0.12 in /src/Coalesce.Web

This list of changes was auto generated.

v3.0.0-rc.20200805.1

3 years ago

Changes:

  • 24351029832d172b18be97d83e35799f9ac21bbe Restore the admin table buttons - more got deleted when removing the CSV endpoints than was intended.
  • 7fefdf984f2205301b028ef5de931558ea29561d Fix #52 - Prevent local vars in controller actions generated for methods from conflicting with the method's parameters
  • 3d94233bb84ef052c5e32b1b0b09b9c2b04afe18 Fix #13 - Accept string[] for roles on SecurityAttribute
  • 681d5c8f1549d87ac2b962f1c3c6cd68d67bc0d5 Fix symbol generation for IntelliTect.Coalesce.Cli.csproj
  • 1cf70f63946cf0c47124e1f82d54d266fd88ad23 Update docs for #169
  • 37d18f38fccf03b7f1b1da2403a09a128d8dde45 [breaking] Fix #95 - removed the CSV endpoints
  • 3e232a0d5c0638633da69d0e18828fe6a278017c [breaking] Fix #123 - Added implicit conversion from T to ItemResult<T>
  • d5c37f8e67c42b10723513641e38a270bfb613f3 [breaking] Fix #169 - Omit "Async" suffix from generated controller actions and Typescript
  • 05667ca6642f6d28c43906112fdb0fe641c2a295 Fix #158 - parsing empty/blank as a number should result in null, not 0.
  • da91c7206c2665153d884e9622940a97a51c50c9 Fix #164 - filter params not being removed the first time the X is clicked.
See More
  • 55328141e46672307ca3943650fec4ef5c2b2714 Fix #166 - Don't emit CSV endpoints if reads are disallowed.
  • 9b1195d8f3ca6bd35ff9c3d745b1934d5c4a3a51 Fix #172, #162 - Allow column reordering on c-table, and documentation fixes.
  • 8d50c5883d6e6d01bb9bd5e509d54f08fedc2889 Fix #160 - throw a validation error for static [Service] classes.
  • 107d3471ad3713f274c3653d60e3f3b1f1a86c53 Bump lodash from 4.17.15 to 4.17.19 in /src/coalesce-vue (#170)
  • 79159e3f2d07c31e308af4d92fd8630205bd702d Make InverseProperty slightly more strict to reduce the chance that it could go into infinite recursion (by avoiding checks against Role when possible).
  • c0f0005bdf3ade7ab87594394074967e2833d625 Prevent InverseProperty from incorrectly picking up the wrong type of property when detecting by convention.
  • d631280dac5e870351b9efe5fce5397efc3348b3 Vue: Added some of the ClientValidation rules that make sense.
  • 8593d27ed83cd4730619cc9e1ea379e8afd90ab2 Document support of DatabaseGenerated attribute. Fix https://github.com/dotnet/roslyn/issues/37379
  • 5539d4c20f60826c0fdd3879896a2b8dc8af1f81 Hide bullet point from errors in c-loader-status if there is only one error.
  • 8f94e55865c744d7cb16d5aaf550bf4c17724712 [breaking] Added support for non-database-generated primary keys
  • dfff83c19bc49c5b4b303890606c0b23eae3637f Add ContinuousIntegrationBuild msbuild property
  • 008dedb22b701bdb525ab61237d4847acb40e4bd Create Snupkegs (.snupkg symbol packages)
  • f018e9ef0cb7f9dd4a93233674ad6d01c4bfd9d5 Added C# 8 nullability to the IntelliTect.Coalesce project. (#168)
  • fa73569e29d1687b21522f09b1180504e45f3fc0 Attempting to fix sourcelink
  • 5b3f7de42a03bfedf38ae8807d0cd945ae5bdd7d Bump swashbuckle version (#161)
  • b74b8c4a009558cfbe4acc60a72f8b0edd87f511 Added support for editable table mode for c-admin-table and c-table
  • b8a4b0ea812d908605b15b1d76b241b1bb215221 Fix event used by v-file-input when deleted to by c-input
  • 48f680f023b53e2c217181fbf2f3b061aff38877 Added pageSizes param to c-admin-table
  • 1507f3b6bb00787560892ccf0748b239fabe8b3a That was way too much effort - just adding date-fns-tz as a hard dependency.
  • 605afb8b18fd36a94f75e728e4f897d44d5b51a5 Make the tests run
  • 8c5d9751f1f126a319e0153c2b64814a844e0059 Totally different approach now for date-fns-tz to avoid absurd warnings from webpack about optional modules being missing...
  • ca8bbfce0c7bec8d0fee25feb1d80865a44b85c2 Fix optional import so webpack doesn't freak out.
  • cdd60a7d79d4dd6e625a77db6b0e7a017bd99c36 That was supposed to be a peer dep, not an optional dep.
  • 44896c406940f3f0552bf76909e79b30fa3e8805 Wasn't an issue with the node version, it was an issue with date-fns-tz being entirely unintuitive.
  • ade6fb9fc91fa0e53836e2accdc96c7e47e83c70 Try again with latest node
  • 66bedae483621224875a3db22ecd627ec44538ba Optionally support date-fns-tz for formatting dates.
  • 0012244819b6b886dbcd5f38757e776fb0874404 bindKeyToRouteOnCreate - allow specifying a route name
  • b183ad33279b0e92a2b34f90142c0e5ff49ec847 npm audit fix --force
  • c1e5513a81436de5c7582e5165e9b1c2f5caa523 Make c-loader-status resilient against null|undefined
  • 5b006d04c166758bc75cfeaf29d1f9c075d7d1b8 Fix pagination issues from last commit
  • 9cb4cebd3bd9a01bf734655baae9a65ebe6d18f5 Support ListResults that have an indeterminate total count (i.e. a TotalCount of -1)
  • a9fe9d263ef35d398c62b690a28b2f44d87aeca1 Remove unnecessary prop type check on c-input
  • 99263ebaf74d5221b630b3f6b97950387d4d970e - Add method to API callers to reset their args objects
  • d1c0bb94dc37583d2eaa3caf4e850605751c709e Fix Vue codegen for date-returning methods.
  • 268e49a065678905a73c6de9275e218d694fc4ee Workaround https://github.com/nodejs/node/issues/3285256
  • 35237754544e47a96bba01669db976336751124e Fix bug in safari with parsing ISO date strings that lack timezones - Safari's Date constructor incorrectly assumes a UTC timezone rather than a local timezone.
  • 4205d96bf762a2e5f9fd195e9ec7378fb425ba96 Prevent NullReferenceException when searching entities that lack a valid fallback search property ("Name", or a PK)
  • 8e30d300aaf59a4ff318aaa50fe56b6107f386e8 Use ICustomAttributeProvider.IsDefined in HasAttribute to avoid allocations.
  • c1887b38b18020813133020b221181a4ba60c152 Make multiline comments that come from c# xmldoc comments not ugly.
  • 0662b26aeccf00b690fe40fc90cf18a65818e0db Add additional string search methods (#165)
  • 19ac04c634073ac76d15a1f920b9f115c239daea Revert "Fix bindToQueryString - resetting values to null didn't work"
  • 5d05aca4cacfce7ebd939c488de5ac78e4c4d460 Fix bindToQueryString - resetting values to null didn't work
  • d862034c116f93cc44ee81ccbd95789f66c996c4 Fix manually resolved routes so they work when basePath is used with vue-router.
  • 1cc0e692cd434cf8a1c2f80ff9f62b0a72b5c82f Allow auto-closing the date picker.
  • 23358684055e34064e0644528e09905081d0ef33 Fix #159 - Render save/delete errors from c-select-many-to-many.vue.
  • fe24ecdc353dddd2f50cdaf323ea9dc3788c1acb c-input => c-select (thanks @COsborn2)
  • ceb24ee37e4b8933a6ad68777d9df4a6a3925794 Refactor out IncludableQueryProvider so we aren't dependent on EF internals anymore. IncludedSeparately is now implemented with a custom Expression type.
  • 9269de12ce41d2b76aed507813bf1f011b37157d Minor docs updates
  • 9d5ae161aaca3f73263b22c9c55e4c78c98bf217 Vue docs are done (enough)!
  • cbc4f1f9fbf6cd38216488af7529b3b6a2c5b207 Started on documenting the vuetify components. Knockout out most of the complicated ones, except c-select.
  • 71449faefa4458153c443db8ab088212434ec588 Started coalesce-vue-vuetify docs
  • ccfaee34a795524c9124dbe5344fe20bc4d92144 Made getting-started pages for each stack, and polished up everything as best I could.
  • 2adbc6e338081110723786273b879a261b555613 Fix errors in the docs
  • 3a4dcec175ce48feed79d5cf1170f91cac47da58 Fix bad url
  • 8254c2a18dd3f4a0048b648645efdf94d31ee68d Un-Knockoutify all of the common docs pages.
  • d1462ce0e518dc905b54a5370098c74e27957a9c Update theme
  • 13cf01333934cb5bd59c0d9bbe1f882ee8a47380 Finished viewmodels.rst (for the most part)
  • 3ad94e5885e2ff68f08b008bf2a170fcce934614 Docs WIP - finished api-client, started on viewmodels
  • 64e3b700cadea929649b55c781b202727b573e3b Docs WIP - switching computers.
  • f1161f89b872011d71365719a65f4a1f022b6344 Vue docs (WIP)
  • 9627bc3703c06687cdf9d4df2713968d51e667e8 Refactoring to remove redundant "...ValueTo..." variants of convert/map methods.
  • 5001c3e6ccd6e1e48bd635d7d18fff477205780c Remove ALL the NodeTool@0
  • acae4d82d44aaef1613fa8f286dfd1b131baed9a Fix enum detection
  • 7775c69d167073d1bfa73f43fb26e548cfd75415 Fix infinite calls of getCaller if the calls fail (not found, or otherwise)
  • ebbebee9ec9b04482bd0a7758e0143f171c9d072 Better ux for void-returning methods - don't render 'null' on success.
  • a8c37645868499b4aee22ad4c1edab6c4393464a Silence warnings about not overriding GetHashCode - its intentional.
  • 4b0216a17d2b974ecc9ef92da02d511f19ea2e85 Fix all sorts of issues with equality comparison that were preventing Behaviors from reliably getting picked up.
  • ec40b1a8a0d501e4bf230330ccc2a5603ad1a413 Remove arbitrary restriction on c-select of requiring a foreignKey or referenceNavigation
  • 622e9d1ac79bec41709a3d3d1104b0c89aef13b9 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • cb88ee29f290f902b9244b6051a1a19ea204998c c-select: Fix missing event args for vuuetify callbacks that we manually invoke
  • db7df10996ce9c50b4a16b10b5345eec039cd60c Type model improvements (Fixes #36) (#153)
  • f5afe069b4384a15c19679a475ebb3215f68b298 Default boolean filters to true, as that feels like what you actually are wanting to do most of the time.
  • 5163d32aa0508ab12cfab29b69f2e0d42f21e129 Support boolean filters in c-list-filters.vue
  • 4aec155548e67ec12e2cba6feb958d620dfe0a8a Missed the other half of bindToQueryString for checking metadata.props...
  • c0c7d5beb3f1a2eb3b3e3f8ec2fdb46f5750f654 Datasource metadata uses props, not params.
  • 21738e98fd84baa421b47cd5bb09a713d5efc7fd Stop generating IncludeTree includeTree = null; that won't be used in controllers
  • ef37a1b00b3829c09ee620a3349f60b93070d043 Oops
  • feadb3a3394435f8ade58326d9e4d267f7f2c2e0 Its 2020 and jest still can't deal with imports of es modules.
  • 8593f7669ca7c7fc744a533fd13c10e59fdd4765 Support router.replace with bindToQueryString
  • 0ac72869464b16b9c3363ed8b517161a7cd8a7f5 Whoops, wrong property
  • 28928e4546d00e5badb358271f3bfb1dbf54754a Add pageTitle props to routed components
  • 5c3eb76195e02b25c6045e085e1627943a0b1dd0 Insanely, the pack command uses a different setting for determining which projects to pack.
  • 6bfb19fb8dd9d9b08ce334e3243f7b8b1dd9c93e dotnet pack packs things with IsPackable=false apparently.
  • c8ab5c7b144b0211dd47a0aa015dc697a52a9c84 yaml...
  • 2b2aa3da1d368fb2a5514424fdd31b334169f0bd More refined dotnet restores
  • bb7c64ec0c9cdb66b944b6c934a5ae7f1c96be19 Removed unused dotnet-coalesce artifact
  • 2ac560098753a98403a8a90dd9f27d960b57060c k i guess we still need 2.2
  • 2214d278f94d3869420bcbf27d0b72d34db2be24 Yep, wrong task name
  • a1009301e5f6474f0f0cb2b58978e51c11141bbc Split Coalesce.Web into its own job in the build.
  • 4d8de04de6db200abf5133ab0dbce32a3172ce7d Sourcelink randomly started failing to restore apparently?
  • fcb219514ba01584be5545f368461b157037d5d5 Expose bindKeyToRouteOnCreate
  • f47b23f63de46e955a040c1f6babf1da19f6a1ed Ensure that external types are valid Models when setting them on a ViewModel.
  • ce261a15a7a5f0dca734bf36609531e5877e7d8b Fix inconsistencies in constraints of TDto type parameters
  • 6276702cc2445a08646938b7ada40c872ec95257 Include v-checkbox in .hide-non-error-details
  • 344adf16f4ce3b2ea0e4016b9d1c7b7637bdb8cc Register c-list-page-size, add pageSize prop to c-list-pagination
  • 2baf9b7e699836ef279c764c309ade48dda4b3e7 Fix up c-list-pagination & related components; added c-list-page-size
  • 5da46de6ecb4e1161deccffea65d2c6868a0ec46 coalesce-vue as a non-peer dep of coalesce-vue-vuetify is bad news, as it leads to possible duplicate occurrences of coalesce-vue in bundles.
  • 80e49c1bc0ac0678a1ad4b37edbb52ad4c932a1a c-loader-status - preserve whitespace in error messages.
  • 67ad95a7765795f99a2fe41912fd7258301e10e1 Fix issues with split date/time pickers on DST switch days.
  • df87c17c9cd8055f2aa2bf8c2c0c8824ed0c4b89 Don't write errors when encountering xmldocs that lack a element.
  • db233489ad706a675ec32951f0af2a8df492e5e4 Hide "create" button on admin table when create is disallowed (#150)
  • ae09190ca30247840c97aabc7ad05cb1caf244c0 Generate inherited interface members for interface-based [Service]s
  • 957842a369abc10be063adb981bb623403659783 Don't track property-level dirty flags for dontSerialize properties.
  • f531977b5a933c3c7b5ab7ce453083772b5ebcb7 Don't treat zero value as absent for required validation (#149)
  • 04e48193cfc7b664b0b5703392eac9bc363f631c Roslyn bump so it understands c# 8, among other things.
  • 10dc22e48959c22c000b93b258acfc0361a47df1 Clean up dependencies
  • bed372be186f5c78871dc2361ee22e5676650e23 Support hidden properties in coalesce-vue-vuetify (#148)
  • 4e1f244970f29bde4712c6fff59fe27b6ca372d6 Fix file method parameters with nested objects (both knockout and vue)
  • 37f2fa2adddc925df2e68e512516b4ead78db38a Knockout: Fix form serialization of complex nested objects when uploading a file
  • 9dd1af72db6e459d892581103bd80dc3225a2809 Fix typescript error in coalesce.ko.bindings.ts
  • d25156f4f3b25dafd9547506e121f9aa50b35844 Added file parameters for methods. (#147)
  • 422420dd3600ed038b20827f8b48a809592ac9be Fix generation of enum collections (#146)
  • c33d993a25b991a9f885f5b78c88d8159001b2ac Added some better customization points for datasources and behaviors that govern custom DTOs that use alternate keys as their PK.
  • 42d8f5d235c062f4f283d5cf6d365f9815a05ec6 Fix styling issue of c-loader-status with newer versions of vuetify
  • cd3e8c01f64ad86dce99bf429017dba40d81e09d Correctly discover types from properties and methods of IClassDtos
  • 528e78463fb876418d8f4962f047358a3ca1885c - Fix data sources not generating for models.g.ts when they do generate for metadata.g.ts
  • 3bfba61e53531be22b42ebc6f9c76451f8a2e45f Fix generation error when whitelisting root types that don't include the DbContext but do include an IClassDto<>.
  • 4f748bc541322eeb7e0e7b89e64676a31e471789 Added the ability to whitelist specific root types
  • 0ee0f2d23a9572600c79d64eacd82f7da8992c27 DotnetCliTool doesn't support netcoreapp 3+
  • e85702169e70b52d4554b4c153594248fbe78630 Fix mismatched version of EF in memory provider
  • 16dc005f463ebea3fdfd6a157d997b54a5a61252 I guess we'll just push everything to 3.1 since installing the 3.1 sdk on the build seems to uninstall the 2.2 sdk for some reason
  • 55ccf4291d05a623cb8d535644f5d5ff035f7e1f 3.1 sdk not on current pipelines vm images it would seem
  • 236cec98252564ae65d996f0b567d1b992c09897 Support aspnetcore 3
  • cbf1b5be2aeb2feba146e65c18939592fdfc92ce c-admin-editor: Respect dontSerialize when determining if a prop is readonly.
  • 5c8c004d995464c301300c191417ec957b764384 Remove undefined from RHS of numeric index signature of EnumMembers<>. Causes errors in TS 3.8.1+?
  • 6f88f157dd1244de152f7964794eb3d34bf4c959 Make ctor of ProjectedDtoDataSource public so that when Visual Studio auto-implements a ctor for you, it defaults its visibility to public.
  • d62cdb0e5d5043b3644462628f1ec9b8de76115c Document ProjectedDtoDataSource
  • 9ca22a43af74d82f90955e293fc8d401ef454a8d Create ProjectedDtoDataSource for performing DTO projections via sql queries.
  • 5ab37afa3e7abf71d4d07639d4114b82da934791 add BeforeSaveAsync and BeforeDeleteAsync to StandardBehaviors
  • ebf9141b4e5315facc5853e758569adbce4b275d Code cleanup, fix code that fails tests on linux due to https://github.com/dotnet/corefx/issues/28611
  • 8a1a763d9976abed3759977e30a13b64c497765c Oh.
  • b5b501ddebf862d3f69de838fcb965b395619354 I hate yaml so much.
  • 21716a7ff1eb53ddad1d96faeb31101467c6af32 Don't install a specific sdk version - use whatever is already on the machine. Per https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md, the one we need should already be there.
  • 9cc33448105241c9eb5b184559a84dafbf0a7f6a Yeah, fix that version number too
  • 992cfa744c85c771e9dbcb3a9e4b84de90b8c398 Need to specify sdk version so the build pipeline will have c# 8 available.
  • 27de2b78b893ada128cff2f5b37c7f2a6e5582e2 Add Roslynator, fix many issues.
  • 160142a24d6828f80718169502306420585a7bb0 Make ReflectionRepository.DiscoverCoalescedTypes threadsafe to prevent errors in the tests of projects using Coalesce when those tests are spawning in-memory kestrel servers, and doing so in parallel (since they'll be using the same ReflectionRepository.Global instance).
  • a63d4ab08f3e87a1b0d484f7bf54f0ebeeb57087 - Pull values from querystring when creating via c-admin-editor-page
  • f5a37f9db16ee76c29b84ef19cc740d182f08f6a File reorganization, created c-list-filters.vue
  • 59b58465a639f484d3506bc6cab009dc5d3db38d Some misc changes. Committing before I try out vue 3
  • 0e47f0630bffe7c2fdb1819984ca32ce612d74d7 More admin components goodness.
  • ed45ebf98dda5af712d27049af23ce80b182c97b Build coalesce-vue-vuetify against the compiled local copy of coalesce-vue.
  • ddeb86572dfb5167ded21acbb50fdc34ff3dab1e Lots more work on the vuetify components. I'll be shocked and amazed if this actually builds.
  • cb83afd7105053504cbec49106f30a56a63d9d47 Build, take 10
  • 7f5807fd2a5040b1fec60a3c6788dc6b4ce987d4 Build, take 9
  • 1791d81695b3204e8c707d323a8cc5cb107a6ce0 Still have to build coalesce-vue for coalesce-vue-vuetify's build to work.
  • 64ca1c0ed926baeaf4d341cdf839f59528e0d3fe Update lockfile
  • dc08cb939cacc993bc05eefaf9d373da3ec925cd Coalesce.Web.Vue: Overhaul to not require installing our peer modules (coalesce-vue and coalesce-vue-vuetify) by packing them and then installing from the .tgz. Instead, we symlink them and have a bunch of webpack config (in vue.config.js) and Typescript config (in tsconfig.json) that makes sure that we don't have all the module duplication that was the problem being solved by the pack-and-install approach.
  • 4a4b3f5aaac26b1d84c9ce70b5ed322e84e33e9c Apparently date formats are different between linux and windows, so our tests broke when I switched the builds to the ubuntu agent. https://github.com/JoshClose/CsvHelper/issues/868
  • 781042c19ebd42c4a7a0b1fd41ee12e2786f122f Build, take 4
  • 7045d66ab51a00c55d87c5d04bb6b9eb1a9ab509 Build, take 3
  • c3f97042ae833a0379af1d8784e270a4cc222e6f Build, attempt 2
  • 7a6611c7cbb493721fd879db3aec9ff3165645be Initial add of coalesce-vue-vuetify, a Vuetify-based component library for coalesce-vue.
  • a52dd2cdf50a92c3da193082a457e407a9f4f721 Type setTimeout tokens as any so we don't have to keep dealing with node typings causing them to not be numbers.
  • 37cf31a43d5469b3bfb7eeeea0d5862384a5f189 vue: fix multiple successive cancellations not working.
  • 508cfcc87b796978ceea074415230c86b6e81a7b Make the "Not found" message overridable in datasources.
  • daef9222abf01756530a16426be25792ff217a48 Make searches on date properties handle searches for an entire year
  • da59c40f6de794bd77d937df9dfdeb3ef22172ac Discover enums from data source parameters.
  • b177a9cdd9d80534ec623a8b26ec3b60dde3499d Always save all props if object lacks PK, don't explicitly dirty ViewModels on navigation prop setters if the incoming object already was a ViewModel.
  • ae50080f36eec8801a7f861ff0890c22b09858a9 Vue: Fix typings
  • 7119d65a182b57701e4ecca3993bb03d32e2124d Vue: Fix serialization to DTOs for DateTime (no Offset) values.
  • efe78bd57c637c2239731cfadd8e766c490da925 Use property level dirty flags to determine which props to set from incoming saves, instead of ignoring the whole model if any prop is dirty.
  • 6a9de07a10a397d9356a9709e6de26919f4f9797 Fix some issues with surgical saves.
  • c12ba5f96152614ef26166702b90e9818a15d773 Fix wrong type being codegenned
  • c68ec41d8c68a921d9254a9deb8ea822cb1127a7 Save now supports only changing specific properties that are sent by the client, instead of always updating whole objects.
  • b1bdfdf20242420fc8e6dc046940f8040b56b790 Upgrade Linq.Dynamic, fixing (at least partially) a memory leak caused by EF Core's query caching having a bad interaction with how Linq.Dynamic builds queries.
  • 711d79b8522c26005640eb6d60cd37de20c0c662 Don't assume HttpContext is non-null
  • 8bdc362254a4c4ec7c006e4c0b068003bfb9c798 Ensure that new ViewModel instances will have their collection navigation properties initialized to empty arrays.
  • 075c9fe51cf36014f7af283bda99b3b1a2866757 Allow unexpected parameters to be provided to $invoke() without causing errors.
  • efec3632c1b319ec2c714fed045c9ac4e276d611 Knockout: Fix rebuilding of many-to-many collections - wrong key name was being used.
  • 78078911dffdf60795831ec92e2d1f287eb6517c Minor perf tweak to updateViewModelFromModel
  • 481dcf46a06382e7423851612bf94bfaa5c859d1 Knockout: cancel pending autosave when item is deleted.
  • cbdd78218f5c916232fbd81245fd21e6d592383c Don't update any dirty models in a hierarchy if those dirty models are autosaving.
  • c2d9d203d522cd11c3b25664ada192179ded9819 Don't add callbacks more than once
  • e91e4061ff7b90e44286dc49a0f7fead35ee30da Fix incorrect "Unknown Error" in the event of a network error
  • c351fc7a6cd7ce6e9f1896144b837c125946ddab Move the handling of raw string response errors to the ApiClient layer, rather than the ApiState layer.
  • b606a72a824f800b4a60e621093d2df9fcfcd77e Add helper function that can extract an error message from an error thrown by an ApiClient request.
  • 700f5538626ca244ea7354be390533f277f0fb4f Minor tweaks to global GET request caching
  • 0cb4cd70040ea5a383a59f8232de025cf42a0c69 Added the ability to do global caching of simultaneous GET requests (intended to be utilized by dropdown UI components to avoid spamming the server with duplicate identical requests on page load).
  • 222db3cd3f1f87106254559b4420743be67be4f7 Add a stable object ID to ViewModel instances.
  • 8f16ef34ba93220a6d49fed109396dffb2aed4aa Added ability to add custom rules to ViewModel instances.
  • f17f105599185e90b9a23ce43e2e8bbbbde7a870 Fix minor typing issues
  • c3c86e3174013e538340329c775265a0551aa983 Add validation errors to the view model, use those to control save and autosave.
  • ca4f9e149779d7935fd0677878d3ca0454933d38 Emit property validation metadata
  • 1a835a35608f9f20e569fee17b98e36de0431364 Don't infinitely autosave on failure, don't do a no-pk autosave if a $load is pending, don't enqueue more than one $nextTick callback when lots of property changes happen.
  • ac3c3c64194b22ec8dce5a95af72bbb66d409cba Implemented deep autosave.
  • abb67a52a959ba80af4f3198da2fce7d8e115b0c Fix up foreign keys of related objects when an object being saved gets a new primary key.
  • 68cd94ab7ce627b5a166d4023556d3c8a3ac5a99 Add inverseProperty to the vue metadata.
  • d49adc3e990153b7ad8363a5612ce3874297ad6e Immediately autosave when turning on autosave if the model is dirty.
  • 332eff136b375c1a9b1e52e18a21b752c3e1d2a4 UTF8-BOM strikes again
  • 9679008ef6fc7a69d8170df9ff8d0fd3fd21e7e4 Fix test metadata
  • 93abd4bcf53356196101b23f314f0eebc0c83699 Add DateKind to metadata, use it in date formatting.
  • 080ce04745e7260d78285634fe8c88410745a005 Totally was defeating the point of the .valueOf() checks I added by not actually putting the property assignment after them...
  • e1435ef330b9998d9ebc7871c67955f1e9b3c8ae That's not where that (hasResult) was supposed to go...
  • a531fe1aa0c369c8085a5e9603c0855d1669afa0 Maintain same viewmodel collection instances when loading results from the server.
  • e0e95d00234c1a8c6bf6c357e439d65e6434eb04 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • c7302070dc6be72c9089b64664f1291dbba7460d Add ViewModels for Services
  • 1506193ebea99bce4184ca895738e99eec4ea1e5 Bump mixin-deep from 1.3.1 to 1.3.2 in /src/coalesce-vue
  • 7cdd847d3199eeae3ef2b3f14d16baf95d0e77c7 Fix IsClientSerializable for collections of primitives - it was accidentally broken by the change in behavior of TypeViewModel.IsCollection in 829b492f33. It previously worked with only arrays of primitives. The change made it not work for any collection of primitives. This change makes it work for any kind of collection of primitives.
  • d115946c56188d72faa4f35cc4e084439bd7d495 Fix security behavior issues introduced by aa2bfa5. Also fixes #119.
  • 02cb9e1b4a38e099c5306163ace5d26c7f779c73 Remove RoleMapping. Fixes #97
  • 74b888ed9579b12889517fd0190ac598b4e7c7ed Reorganize tests
  • da2b072edcbbdc22d63dd59a6bba1e698495b3e5 Typescript upgrade, better type for ViewModel ctor.
  • 87a304faa4612e2c8f1340d253dd127f571cff8c Date handling perf improvements
  • ac45148b3a9b0f2c432325cab1a1f86a0eacba49 Add isStatic flag to method metadata.
  • 456190b6e184baec03c38bb37b8f3d341a7de097 Freeze all metadata to prevent unnecessary Vue reactivity.
  • 6a3f374d77e9c43d8883d132c83bef5fc1075220 List default page size should be 10 to match knockout's behavior.
  • 1f21ffdc1ebf58956a267992733a87d9f5c38b6e Use a case-insensitive comparer for the Filter dictionary on FilterParameters
  • f2364566aeaeee940d3d26869696d88d8f6a910f Perform reference navigation and FK fixups in the ViewModel setters so that code outside of $loadFromDto() calls can benefit.
  • 7fbcb7a2e00b838c5166229e54f8d2d31b9c6a60 when onFulfilled/onRejected callbacks return promises, await them.
  • 43155bd343ce646ef669d962dd625b65dbbc7c27 Add a displayName prop to the manyToMany metadata.
  • 0d6103f739cbb9761b4375cd9b7665be626c287c Don't recursively perform conversion into models of objects that already look like valid models.
  • c8e6d612a368117eb361d9fc5239fe56fa34ca90 Expose ViewModelFactory so I can use it in components (creating ViewModels for many-to-many join entities form the select-multiple component).
  • 2705a2b275fc1629894c9e6b31f80f8822f9c5a0 Many-to-many metadata was incomplete, missing information about the near side of the relationship.
  • 4eaaab582dd96638b9917576da95130bce3f5070 Expose the parameters-to-dto method (allows creating watchers against parameter objects in userspace that are much more consistent)
  • ea769897827da31154c5a79115324e82804c9747 Performance: generated api callers should also be lazily created.
  • ed3b76e3b2ae653016c0b66c959bb699b35517a0 Performance: lazily-instantiate API callers since their creation is a little expensive.
  • ff29517f6f9c3d1dfb51da863f74a71e350b08c3 Performance: Removed some unnecessary closures and function calls from hot-path model.ts code.
  • a3e972b51f3ac193c2288979e53d1f0cc7e96eff Switching to a more traditional way of handling $isDirty. The old way was far too memory/cpu intensive.
  • 1589a6325726698b9c9c38c0413304ccdb7ac04f fix ViewModelCollection reactivity for newly-added items in a weird edge case (see description in the test that was added in this commit).
  • e3aa94a1d39139a84095bfd7b03757dd3029563d Fix handling of $delete when item has no primary key - the item still needs to be removed from the parent collection.
  • 553cd3c94e999d9861a5c2fa71e307e76df4ebc0 ListViewModels now provide ViewModel instances through $items.
  • c0521afec9444529252f1df1ff609ea598b84b2b Add getter-only props for many-to-many collections.
  • 950520f316c6e83d28d6fd9512b6b8bb3ae39b57 Fix issue where existing ViewModel instances weren't preserved when using the ViewModel ctor's initialData param.
  • 7a61195cdff609b5887410aa6138e1440e8fc05e Handle recursive object structures with $loadFromModel/updateViewModelFromModel
  • 773430f7464583b35741f5aea410af57a9ff88fe Fix ViewModelCollections not being reactive for .push() calls (was mistakenly using Array.prototype.push, instead of the actual push from the instance's prototype which will end up being the one that Vue provides).
  • 0efda59fa9b40b2ab5423828ec6de4de3eb46af3 Added distanceFromNow options for valueDisplay
  • 19585214ef02b0903544c2c82b3e3c4b3e029087 Fixed a bug that was causing FK values to get set to undefined when both (a) their name did not match that of their related PK, and (b) the corresponding navigation prop of the FK is declared in the metadata AFTER the FK itself on the parent's props object.
  • b2ffbd55bcd09380bedd6e6708506ddedc835848 Make args objects on callers w/ args reactive.
  • 774099df48d0a4206fc3ccf3893a9c7383ff63b9 make the date format configurable for the display visitor
  • 1791ac469953c07f1ab99e7f2ca6d1f602121b23 Fix bad method name for $previousPage(), add more paging properties to list viewmodels.
  • 12ab7094eaaec5e43ba62829802c4325be913dd6 Failed requests should reject their promise, not resolve it with the error.
  • 5100c372f5064379941e6a4dc1e9a5b304b54c22 Despite my recollection that I did so, apparently I didn't actually regen the knockout project.
  • 2f79cd7f2aa9fe896b57a3ca6eb97022f3a481ab Fix #134 - Non-navigation collection properties are generating $addTo methods
  • 820a96062a161ff5b1e99c07d099054d542416af Fix missing semicolon, regen.
  • 961fcd2cca2af6ff7b5a48bef7cca91ba1410709 Remove BOMs from the start of our yaml files. I suspect that's what was causing them to break.
  • 0883a7e372e56eabb70c22c2d7046eb93ee0f3b9 Trying different syntax to fix the build maybe?
  • 829b492f3347b3b21c98f6444a52ad367fe291a3 Allow collection types in method parameters for Knockout. Fixes #135
  • c63d639a3ead5cff95bd9d198f5a8a97ca6e4b17 Bump fstream from 1.0.11 to 1.0.12 in /src/Coalesce.Web
  • 0277d562dd079a435b366cfec3f75f6689058fbe Bump jquery from 3.3.1 to 3.4.0 in /src/Coalesce.Web

This list of changes was auto generated.

v3.0.0-rc.20200730.4

3 years ago

Changes:

  • 681d5c8f1549d87ac2b962f1c3c6cd68d67bc0d5 Fix symbol generation for IntelliTect.Coalesce.Cli.csproj
  • 1cf70f63946cf0c47124e1f82d54d266fd88ad23 Update docs for #169
  • 37d18f38fccf03b7f1b1da2403a09a128d8dde45 [breaking] Fix #95 - removed the CSV endpoints
  • 3e232a0d5c0638633da69d0e18828fe6a278017c [breaking] Fix #123 - Added implicit conversion from T to ItemResult<T>
  • d5c37f8e67c42b10723513641e38a270bfb613f3 [breaking] Fix #169 - Omit "Async" suffix from generated controller actions and Typescript
  • 05667ca6642f6d28c43906112fdb0fe641c2a295 Fix #158 - parsing empty/blank as a number should result in null, not 0.
  • da91c7206c2665153d884e9622940a97a51c50c9 Fix #164 - filter params not being removed the first time the X is clicked.
  • 55328141e46672307ca3943650fec4ef5c2b2714 Fix #166 - Don't emit CSV endpoints if reads are disallowed.
  • 9b1195d8f3ca6bd35ff9c3d745b1934d5c4a3a51 Fix #172, #162 - Allow column reordering on c-table, and documentation fixes.
  • 8d50c5883d6e6d01bb9bd5e509d54f08fedc2889 Fix #160 - throw a validation error for static [Service] classes.
See More
  • 107d3471ad3713f274c3653d60e3f3b1f1a86c53 Bump lodash from 4.17.15 to 4.17.19 in /src/coalesce-vue (#170)
  • 79159e3f2d07c31e308af4d92fd8630205bd702d Make InverseProperty slightly more strict to reduce the chance that it could go into infinite recursion (by avoiding checks against Role when possible).
  • c0f0005bdf3ade7ab87594394074967e2833d625 Prevent InverseProperty from incorrectly picking up the wrong type of property when detecting by convention.
  • d631280dac5e870351b9efe5fce5397efc3348b3 Vue: Added some of the ClientValidation rules that make sense.
  • 8593d27ed83cd4730619cc9e1ea379e8afd90ab2 Document support of DatabaseGenerated attribute. Fix https://github.com/dotnet/roslyn/issues/37379
  • 5539d4c20f60826c0fdd3879896a2b8dc8af1f81 Hide bullet point from errors in c-loader-status if there is only one error.
  • 8f94e55865c744d7cb16d5aaf550bf4c17724712 [breaking] Added support for non-database-generated primary keys
  • dfff83c19bc49c5b4b303890606c0b23eae3637f Add ContinuousIntegrationBuild msbuild property
  • 008dedb22b701bdb525ab61237d4847acb40e4bd Create Snupkegs (.snupkg symbol packages)
  • f018e9ef0cb7f9dd4a93233674ad6d01c4bfd9d5 Added C# 8 nullability to the IntelliTect.Coalesce project. (#168)
  • fa73569e29d1687b21522f09b1180504e45f3fc0 Attempting to fix sourcelink
  • 5b3f7de42a03bfedf38ae8807d0cd945ae5bdd7d Bump swashbuckle version (#161)
  • b74b8c4a009558cfbe4acc60a72f8b0edd87f511 Added support for editable table mode for c-admin-table and c-table
  • b8a4b0ea812d908605b15b1d76b241b1bb215221 Fix event used by v-file-input when deleted to by c-input
  • 48f680f023b53e2c217181fbf2f3b061aff38877 Added pageSizes param to c-admin-table
  • 1507f3b6bb00787560892ccf0748b239fabe8b3a That was way too much effort - just adding date-fns-tz as a hard dependency.
  • 605afb8b18fd36a94f75e728e4f897d44d5b51a5 Make the tests run
  • 8c5d9751f1f126a319e0153c2b64814a844e0059 Totally different approach now for date-fns-tz to avoid absurd warnings from webpack about optional modules being missing...
  • ca8bbfce0c7bec8d0fee25feb1d80865a44b85c2 Fix optional import so webpack doesn't freak out.
  • cdd60a7d79d4dd6e625a77db6b0e7a017bd99c36 That was supposed to be a peer dep, not an optional dep.
  • 44896c406940f3f0552bf76909e79b30fa3e8805 Wasn't an issue with the node version, it was an issue with date-fns-tz being entirely unintuitive.
  • ade6fb9fc91fa0e53836e2accdc96c7e47e83c70 Try again with latest node
  • 66bedae483621224875a3db22ecd627ec44538ba Optionally support date-fns-tz for formatting dates.
  • 0012244819b6b886dbcd5f38757e776fb0874404 bindKeyToRouteOnCreate - allow specifying a route name
  • b183ad33279b0e92a2b34f90142c0e5ff49ec847 npm audit fix --force
  • c1e5513a81436de5c7582e5165e9b1c2f5caa523 Make c-loader-status resilient against null|undefined
  • 5b006d04c166758bc75cfeaf29d1f9c075d7d1b8 Fix pagination issues from last commit
  • 9cb4cebd3bd9a01bf734655baae9a65ebe6d18f5 Support ListResults that have an indeterminate total count (i.e. a TotalCount of -1)
  • a9fe9d263ef35d398c62b690a28b2f44d87aeca1 Remove unnecessary prop type check on c-input
  • 99263ebaf74d5221b630b3f6b97950387d4d970e - Add method to API callers to reset their args objects
  • d1c0bb94dc37583d2eaa3caf4e850605751c709e Fix Vue codegen for date-returning methods.
  • 268e49a065678905a73c6de9275e218d694fc4ee Workaround https://github.com/nodejs/node/issues/3285256
  • 35237754544e47a96bba01669db976336751124e Fix bug in safari with parsing ISO date strings that lack timezones - Safari's Date constructor incorrectly assumes a UTC timezone rather than a local timezone.
  • 4205d96bf762a2e5f9fd195e9ec7378fb425ba96 Prevent NullReferenceException when searching entities that lack a valid fallback search property ("Name", or a PK)
  • 8e30d300aaf59a4ff318aaa50fe56b6107f386e8 Use ICustomAttributeProvider.IsDefined in HasAttribute to avoid allocations.
  • c1887b38b18020813133020b221181a4ba60c152 Make multiline comments that come from c# xmldoc comments not ugly.
  • 0662b26aeccf00b690fe40fc90cf18a65818e0db Add additional string search methods (#165)
  • 19ac04c634073ac76d15a1f920b9f115c239daea Revert "Fix bindToQueryString - resetting values to null didn't work"
  • 5d05aca4cacfce7ebd939c488de5ac78e4c4d460 Fix bindToQueryString - resetting values to null didn't work
  • d862034c116f93cc44ee81ccbd95789f66c996c4 Fix manually resolved routes so they work when basePath is used with vue-router.
  • 1cc0e692cd434cf8a1c2f80ff9f62b0a72b5c82f Allow auto-closing the date picker.
  • 23358684055e34064e0644528e09905081d0ef33 Fix #159 - Render save/delete errors from c-select-many-to-many.vue.
  • fe24ecdc353dddd2f50cdaf323ea9dc3788c1acb c-input => c-select (thanks @COsborn2)
  • ceb24ee37e4b8933a6ad68777d9df4a6a3925794 Refactor out IncludableQueryProvider so we aren't dependent on EF internals anymore. IncludedSeparately is now implemented with a custom Expression type.
  • 9269de12ce41d2b76aed507813bf1f011b37157d Minor docs updates
  • 9d5ae161aaca3f73263b22c9c55e4c78c98bf217 Vue docs are done (enough)!
  • cbc4f1f9fbf6cd38216488af7529b3b6a2c5b207 Started on documenting the vuetify components. Knockout out most of the complicated ones, except c-select.
  • 71449faefa4458153c443db8ab088212434ec588 Started coalesce-vue-vuetify docs
  • ccfaee34a795524c9124dbe5344fe20bc4d92144 Made getting-started pages for each stack, and polished up everything as best I could.
  • 2adbc6e338081110723786273b879a261b555613 Fix errors in the docs
  • 3a4dcec175ce48feed79d5cf1170f91cac47da58 Fix bad url
  • 8254c2a18dd3f4a0048b648645efdf94d31ee68d Un-Knockoutify all of the common docs pages.
  • d1462ce0e518dc905b54a5370098c74e27957a9c Update theme
  • 13cf01333934cb5bd59c0d9bbe1f882ee8a47380 Finished viewmodels.rst (for the most part)
  • 3ad94e5885e2ff68f08b008bf2a170fcce934614 Docs WIP - finished api-client, started on viewmodels
  • 64e3b700cadea929649b55c781b202727b573e3b Docs WIP - switching computers.
  • f1161f89b872011d71365719a65f4a1f022b6344 Vue docs (WIP)
  • 9627bc3703c06687cdf9d4df2713968d51e667e8 Refactoring to remove redundant "...ValueTo..." variants of convert/map methods.
  • 5001c3e6ccd6e1e48bd635d7d18fff477205780c Remove ALL the NodeTool@0
  • acae4d82d44aaef1613fa8f286dfd1b131baed9a Fix enum detection
  • 7775c69d167073d1bfa73f43fb26e548cfd75415 Fix infinite calls of getCaller if the calls fail (not found, or otherwise)
  • ebbebee9ec9b04482bd0a7758e0143f171c9d072 Better ux for void-returning methods - don't render 'null' on success.
  • a8c37645868499b4aee22ad4c1edab6c4393464a Silence warnings about not overriding GetHashCode - its intentional.
  • 4b0216a17d2b974ecc9ef92da02d511f19ea2e85 Fix all sorts of issues with equality comparison that were preventing Behaviors from reliably getting picked up.
  • ec40b1a8a0d501e4bf230330ccc2a5603ad1a413 Remove arbitrary restriction on c-select of requiring a foreignKey or referenceNavigation
  • 622e9d1ac79bec41709a3d3d1104b0c89aef13b9 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • cb88ee29f290f902b9244b6051a1a19ea204998c c-select: Fix missing event args for vuuetify callbacks that we manually invoke
  • db7df10996ce9c50b4a16b10b5345eec039cd60c Type model improvements (Fixes #36) (#153)
  • f5afe069b4384a15c19679a475ebb3215f68b298 Default boolean filters to true, as that feels like what you actually are wanting to do most of the time.
  • 5163d32aa0508ab12cfab29b69f2e0d42f21e129 Support boolean filters in c-list-filters.vue
  • 4aec155548e67ec12e2cba6feb958d620dfe0a8a Missed the other half of bindToQueryString for checking metadata.props...
  • c0c7d5beb3f1a2eb3b3e3f8ec2fdb46f5750f654 Datasource metadata uses props, not params.
  • 21738e98fd84baa421b47cd5bb09a713d5efc7fd Stop generating IncludeTree includeTree = null; that won't be used in controllers
  • ef37a1b00b3829c09ee620a3349f60b93070d043 Oops
  • feadb3a3394435f8ade58326d9e4d267f7f2c2e0 Its 2020 and jest still can't deal with imports of es modules.
  • 8593f7669ca7c7fc744a533fd13c10e59fdd4765 Support router.replace with bindToQueryString
  • 0ac72869464b16b9c3363ed8b517161a7cd8a7f5 Whoops, wrong property
  • 28928e4546d00e5badb358271f3bfb1dbf54754a Add pageTitle props to routed components
  • 5c3eb76195e02b25c6045e085e1627943a0b1dd0 Insanely, the pack command uses a different setting for determining which projects to pack.
  • 6bfb19fb8dd9d9b08ce334e3243f7b8b1dd9c93e dotnet pack packs things with IsPackable=false apparently.
  • c8ab5c7b144b0211dd47a0aa015dc697a52a9c84 yaml...
  • 2b2aa3da1d368fb2a5514424fdd31b334169f0bd More refined dotnet restores
  • bb7c64ec0c9cdb66b944b6c934a5ae7f1c96be19 Removed unused dotnet-coalesce artifact
  • 2ac560098753a98403a8a90dd9f27d960b57060c k i guess we still need 2.2
  • 2214d278f94d3869420bcbf27d0b72d34db2be24 Yep, wrong task name
  • a1009301e5f6474f0f0cb2b58978e51c11141bbc Split Coalesce.Web into its own job in the build.
  • 4d8de04de6db200abf5133ab0dbce32a3172ce7d Sourcelink randomly started failing to restore apparently?
  • fcb219514ba01584be5545f368461b157037d5d5 Expose bindKeyToRouteOnCreate
  • f47b23f63de46e955a040c1f6babf1da19f6a1ed Ensure that external types are valid Models when setting them on a ViewModel.
  • ce261a15a7a5f0dca734bf36609531e5877e7d8b Fix inconsistencies in constraints of TDto type parameters
  • 6276702cc2445a08646938b7ada40c872ec95257 Include v-checkbox in .hide-non-error-details
  • 344adf16f4ce3b2ea0e4016b9d1c7b7637bdb8cc Register c-list-page-size, add pageSize prop to c-list-pagination
  • 2baf9b7e699836ef279c764c309ade48dda4b3e7 Fix up c-list-pagination & related components; added c-list-page-size
  • 5da46de6ecb4e1161deccffea65d2c6868a0ec46 coalesce-vue as a non-peer dep of coalesce-vue-vuetify is bad news, as it leads to possible duplicate occurrences of coalesce-vue in bundles.
  • 80e49c1bc0ac0678a1ad4b37edbb52ad4c932a1a c-loader-status - preserve whitespace in error messages.
  • 67ad95a7765795f99a2fe41912fd7258301e10e1 Fix issues with split date/time pickers on DST switch days.
  • df87c17c9cd8055f2aa2bf8c2c0c8824ed0c4b89 Don't write errors when encountering xmldocs that lack a element.
  • db233489ad706a675ec32951f0af2a8df492e5e4 Hide "create" button on admin table when create is disallowed (#150)
  • ae09190ca30247840c97aabc7ad05cb1caf244c0 Generate inherited interface members for interface-based [Service]s
  • 957842a369abc10be063adb981bb623403659783 Don't track property-level dirty flags for dontSerialize properties.
  • f531977b5a933c3c7b5ab7ce453083772b5ebcb7 Don't treat zero value as absent for required validation (#149)
  • 04e48193cfc7b664b0b5703392eac9bc363f631c Roslyn bump so it understands c# 8, among other things.
  • 10dc22e48959c22c000b93b258acfc0361a47df1 Clean up dependencies
  • bed372be186f5c78871dc2361ee22e5676650e23 Support hidden properties in coalesce-vue-vuetify (#148)
  • 4e1f244970f29bde4712c6fff59fe27b6ca372d6 Fix file method parameters with nested objects (both knockout and vue)
  • 37f2fa2adddc925df2e68e512516b4ead78db38a Knockout: Fix form serialization of complex nested objects when uploading a file
  • 9dd1af72db6e459d892581103bd80dc3225a2809 Fix typescript error in coalesce.ko.bindings.ts
  • d25156f4f3b25dafd9547506e121f9aa50b35844 Added file parameters for methods. (#147)
  • 422420dd3600ed038b20827f8b48a809592ac9be Fix generation of enum collections (#146)
  • c33d993a25b991a9f885f5b78c88d8159001b2ac Added some better customization points for datasources and behaviors that govern custom DTOs that use alternate keys as their PK.
  • 42d8f5d235c062f4f283d5cf6d365f9815a05ec6 Fix styling issue of c-loader-status with newer versions of vuetify
  • cd3e8c01f64ad86dce99bf429017dba40d81e09d Correctly discover types from properties and methods of IClassDtos
  • 528e78463fb876418d8f4962f047358a3ca1885c - Fix data sources not generating for models.g.ts when they do generate for metadata.g.ts
  • 3bfba61e53531be22b42ebc6f9c76451f8a2e45f Fix generation error when whitelisting root types that don't include the DbContext but do include an IClassDto<>.
  • 4f748bc541322eeb7e0e7b89e64676a31e471789 Added the ability to whitelist specific root types
  • 0ee0f2d23a9572600c79d64eacd82f7da8992c27 DotnetCliTool doesn't support netcoreapp 3+
  • e85702169e70b52d4554b4c153594248fbe78630 Fix mismatched version of EF in memory provider
  • 16dc005f463ebea3fdfd6a157d997b54a5a61252 I guess we'll just push everything to 3.1 since installing the 3.1 sdk on the build seems to uninstall the 2.2 sdk for some reason
  • 55ccf4291d05a623cb8d535644f5d5ff035f7e1f 3.1 sdk not on current pipelines vm images it would seem
  • 236cec98252564ae65d996f0b567d1b992c09897 Support aspnetcore 3
  • cbf1b5be2aeb2feba146e65c18939592fdfc92ce c-admin-editor: Respect dontSerialize when determining if a prop is readonly.
  • 5c8c004d995464c301300c191417ec957b764384 Remove undefined from RHS of numeric index signature of EnumMembers<>. Causes errors in TS 3.8.1+?
  • 6f88f157dd1244de152f7964794eb3d34bf4c959 Make ctor of ProjectedDtoDataSource public so that when Visual Studio auto-implements a ctor for you, it defaults its visibility to public.
  • d62cdb0e5d5043b3644462628f1ec9b8de76115c Document ProjectedDtoDataSource
  • 9ca22a43af74d82f90955e293fc8d401ef454a8d Create ProjectedDtoDataSource for performing DTO projections via sql queries.
  • 5ab37afa3e7abf71d4d07639d4114b82da934791 add BeforeSaveAsync and BeforeDeleteAsync to StandardBehaviors
  • ebf9141b4e5315facc5853e758569adbce4b275d Code cleanup, fix code that fails tests on linux due to https://github.com/dotnet/corefx/issues/28611
  • 8a1a763d9976abed3759977e30a13b64c497765c Oh.
  • b5b501ddebf862d3f69de838fcb965b395619354 I hate yaml so much.
  • 21716a7ff1eb53ddad1d96faeb31101467c6af32 Don't install a specific sdk version - use whatever is already on the machine. Per https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md, the one we need should already be there.
  • 9cc33448105241c9eb5b184559a84dafbf0a7f6a Yeah, fix that version number too
  • 992cfa744c85c771e9dbcb3a9e4b84de90b8c398 Need to specify sdk version so the build pipeline will have c# 8 available.
  • 27de2b78b893ada128cff2f5b37c7f2a6e5582e2 Add Roslynator, fix many issues.
  • 160142a24d6828f80718169502306420585a7bb0 Make ReflectionRepository.DiscoverCoalescedTypes threadsafe to prevent errors in the tests of projects using Coalesce when those tests are spawning in-memory kestrel servers, and doing so in parallel (since they'll be using the same ReflectionRepository.Global instance).
  • a63d4ab08f3e87a1b0d484f7bf54f0ebeeb57087 - Pull values from querystring when creating via c-admin-editor-page
  • f5a37f9db16ee76c29b84ef19cc740d182f08f6a File reorganization, created c-list-filters.vue
  • 59b58465a639f484d3506bc6cab009dc5d3db38d Some misc changes. Committing before I try out vue 3
  • 0e47f0630bffe7c2fdb1819984ca32ce612d74d7 More admin components goodness.
  • ed45ebf98dda5af712d27049af23ce80b182c97b Build coalesce-vue-vuetify against the compiled local copy of coalesce-vue.
  • ddeb86572dfb5167ded21acbb50fdc34ff3dab1e Lots more work on the vuetify components. I'll be shocked and amazed if this actually builds.
  • cb83afd7105053504cbec49106f30a56a63d9d47 Build, take 10
  • 7f5807fd2a5040b1fec60a3c6788dc6b4ce987d4 Build, take 9
  • 1791d81695b3204e8c707d323a8cc5cb107a6ce0 Still have to build coalesce-vue for coalesce-vue-vuetify's build to work.
  • 64ca1c0ed926baeaf4d341cdf839f59528e0d3fe Update lockfile
  • dc08cb939cacc993bc05eefaf9d373da3ec925cd Coalesce.Web.Vue: Overhaul to not require installing our peer modules (coalesce-vue and coalesce-vue-vuetify) by packing them and then installing from the .tgz. Instead, we symlink them and have a bunch of webpack config (in vue.config.js) and Typescript config (in tsconfig.json) that makes sure that we don't have all the module duplication that was the problem being solved by the pack-and-install approach.
  • 4a4b3f5aaac26b1d84c9ce70b5ed322e84e33e9c Apparently date formats are different between linux and windows, so our tests broke when I switched the builds to the ubuntu agent. https://github.com/JoshClose/CsvHelper/issues/868
  • 781042c19ebd42c4a7a0b1fd41ee12e2786f122f Build, take 4
  • 7045d66ab51a00c55d87c5d04bb6b9eb1a9ab509 Build, take 3
  • c3f97042ae833a0379af1d8784e270a4cc222e6f Build, attempt 2
  • 7a6611c7cbb493721fd879db3aec9ff3165645be Initial add of coalesce-vue-vuetify, a Vuetify-based component library for coalesce-vue.
  • a52dd2cdf50a92c3da193082a457e407a9f4f721 Type setTimeout tokens as any so we don't have to keep dealing with node typings causing them to not be numbers.
  • 37cf31a43d5469b3bfb7eeeea0d5862384a5f189 vue: fix multiple successive cancellations not working.
  • 508cfcc87b796978ceea074415230c86b6e81a7b Make the "Not found" message overridable in datasources.
  • daef9222abf01756530a16426be25792ff217a48 Make searches on date properties handle searches for an entire year
  • da59c40f6de794bd77d937df9dfdeb3ef22172ac Discover enums from data source parameters.
  • b177a9cdd9d80534ec623a8b26ec3b60dde3499d Always save all props if object lacks PK, don't explicitly dirty ViewModels on navigation prop setters if the incoming object already was a ViewModel.
  • ae50080f36eec8801a7f861ff0890c22b09858a9 Vue: Fix typings
  • 7119d65a182b57701e4ecca3993bb03d32e2124d Vue: Fix serialization to DTOs for DateTime (no Offset) values.
  • efe78bd57c637c2239731cfadd8e766c490da925 Use property level dirty flags to determine which props to set from incoming saves, instead of ignoring the whole model if any prop is dirty.
  • 6a9de07a10a397d9356a9709e6de26919f4f9797 Fix some issues with surgical saves.
  • c12ba5f96152614ef26166702b90e9818a15d773 Fix wrong type being codegenned
  • c68ec41d8c68a921d9254a9deb8ea822cb1127a7 Save now supports only changing specific properties that are sent by the client, instead of always updating whole objects.
  • b1bdfdf20242420fc8e6dc046940f8040b56b790 Upgrade Linq.Dynamic, fixing (at least partially) a memory leak caused by EF Core's query caching having a bad interaction with how Linq.Dynamic builds queries.
  • 711d79b8522c26005640eb6d60cd37de20c0c662 Don't assume HttpContext is non-null
  • 8bdc362254a4c4ec7c006e4c0b068003bfb9c798 Ensure that new ViewModel instances will have their collection navigation properties initialized to empty arrays.
  • 075c9fe51cf36014f7af283bda99b3b1a2866757 Allow unexpected parameters to be provided to $invoke() without causing errors.
  • efec3632c1b319ec2c714fed045c9ac4e276d611 Knockout: Fix rebuilding of many-to-many collections - wrong key name was being used.
  • 78078911dffdf60795831ec92e2d1f287eb6517c Minor perf tweak to updateViewModelFromModel
  • 481dcf46a06382e7423851612bf94bfaa5c859d1 Knockout: cancel pending autosave when item is deleted.
  • cbdd78218f5c916232fbd81245fd21e6d592383c Don't update any dirty models in a hierarchy if those dirty models are autosaving.
  • c2d9d203d522cd11c3b25664ada192179ded9819 Don't add callbacks more than once
  • e91e4061ff7b90e44286dc49a0f7fead35ee30da Fix incorrect "Unknown Error" in the event of a network error
  • c351fc7a6cd7ce6e9f1896144b837c125946ddab Move the handling of raw string response errors to the ApiClient layer, rather than the ApiState layer.
  • b606a72a824f800b4a60e621093d2df9fcfcd77e Add helper function that can extract an error message from an error thrown by an ApiClient request.
  • 700f5538626ca244ea7354be390533f277f0fb4f Minor tweaks to global GET request caching
  • 0cb4cd70040ea5a383a59f8232de025cf42a0c69 Added the ability to do global caching of simultaneous GET requests (intended to be utilized by dropdown UI components to avoid spamming the server with duplicate identical requests on page load).
  • 222db3cd3f1f87106254559b4420743be67be4f7 Add a stable object ID to ViewModel instances.
  • 8f16ef34ba93220a6d49fed109396dffb2aed4aa Added ability to add custom rules to ViewModel instances.
  • f17f105599185e90b9a23ce43e2e8bbbbde7a870 Fix minor typing issues
  • c3c86e3174013e538340329c775265a0551aa983 Add validation errors to the view model, use those to control save and autosave.
  • ca4f9e149779d7935fd0677878d3ca0454933d38 Emit property validation metadata
  • 1a835a35608f9f20e569fee17b98e36de0431364 Don't infinitely autosave on failure, don't do a no-pk autosave if a $load is pending, don't enqueue more than one $nextTick callback when lots of property changes happen.
  • ac3c3c64194b22ec8dce5a95af72bbb66d409cba Implemented deep autosave.
  • abb67a52a959ba80af4f3198da2fce7d8e115b0c Fix up foreign keys of related objects when an object being saved gets a new primary key.
  • 68cd94ab7ce627b5a166d4023556d3c8a3ac5a99 Add inverseProperty to the vue metadata.
  • d49adc3e990153b7ad8363a5612ce3874297ad6e Immediately autosave when turning on autosave if the model is dirty.
  • 332eff136b375c1a9b1e52e18a21b752c3e1d2a4 UTF8-BOM strikes again
  • 9679008ef6fc7a69d8170df9ff8d0fd3fd21e7e4 Fix test metadata
  • 93abd4bcf53356196101b23f314f0eebc0c83699 Add DateKind to metadata, use it in date formatting.
  • 080ce04745e7260d78285634fe8c88410745a005 Totally was defeating the point of the .valueOf() checks I added by not actually putting the property assignment after them...
  • e1435ef330b9998d9ebc7871c67955f1e9b3c8ae That's not where that (hasResult) was supposed to go...
  • a531fe1aa0c369c8085a5e9603c0855d1669afa0 Maintain same viewmodel collection instances when loading results from the server.
  • e0e95d00234c1a8c6bf6c357e439d65e6434eb04 Merge branch 'dev' of https://github.com/IntelliTect/Coalesce into dev
  • c7302070dc6be72c9089b64664f1291dbba7460d Add ViewModels for Services
  • 1506193ebea99bce4184ca895738e99eec4ea1e5 Bump mixin-deep from 1.3.1 to 1.3.2 in /src/coalesce-vue
  • 7cdd847d3199eeae3ef2b3f14d16baf95d0e77c7 Fix IsClientSerializable for collections of primitives - it was accidentally broken by the change in behavior of TypeViewModel.IsCollection in 829b492f33. It previously worked with only arrays of primitives. The change made it not work for any collection of primitives. This change makes it work for any kind of collection of primitives.
  • d115946c56188d72faa4f35cc4e084439bd7d495 Fix security behavior issues introduced by aa2bfa5. Also fixes #119.
  • 02cb9e1b4a38e099c5306163ace5d26c7f779c73 Remove RoleMapping. Fixes #97
  • 74b888ed9579b12889517fd0190ac598b4e7c7ed Reorganize tests
  • da2b072edcbbdc22d63dd59a6bba1e698495b3e5 Typescript upgrade, better type for ViewModel ctor.
  • 87a304faa4612e2c8f1340d253dd127f571cff8c Date handling perf improvements
  • ac45148b3a9b0f2c432325cab1a1f86a0eacba49 Add isStatic flag to method metadata.
  • 456190b6e184baec03c38bb37b8f3d341a7de097 Freeze all metadata to prevent unnecessary Vue reactivity.
  • 6a3f374d77e9c43d8883d132c83bef5fc1075220 List default page size should be 10 to match knockout's behavior.
  • 1f21ffdc1ebf58956a267992733a87d9f5c38b6e Use a case-insensitive comparer for the Filter dictionary on FilterParameters
  • f2364566aeaeee940d3d26869696d88d8f6a910f Perform reference navigation and FK fixups in the ViewModel setters so that code outside of $loadFromDto() calls can benefit.
  • 7fbcb7a2e00b838c5166229e54f8d2d31b9c6a60 when onFulfilled/onRejected callbacks return promises, await them.
  • 43155bd343ce646ef669d962dd625b65dbbc7c27 Add a displayName prop to the manyToMany metadata.
  • 0d6103f739cbb9761b4375cd9b7665be626c287c Don't recursively perform conversion into models of objects that already look like valid models.
  • c8e6d612a368117eb361d9fc5239fe56fa34ca90 Expose ViewModelFactory so I can use it in components (creating ViewModels for many-to-many join entities form the select-multiple component).
  • 2705a2b275fc1629894c9e6b31f80f8822f9c5a0 Many-to-many metadata was incomplete, missing information about the near side of the relationship.
  • 4eaaab582dd96638b9917576da95130bce3f5070 Expose the parameters-to-dto method (allows creating watchers against parameter objects in userspace that are much more consistent)
  • ea769897827da31154c5a79115324e82804c9747 Performance: generated api callers should also be lazily created.
  • ed3b76e3b2ae653016c0b66c959bb699b35517a0 Performance: lazily-instantiate API callers since their creation is a little expensive.
  • ff29517f6f9c3d1dfb51da863f74a71e350b08c3 Performance: Removed some unnecessary closures and function calls from hot-path model.ts code.
  • a3e972b51f3ac193c2288979e53d1f0cc7e96eff Switching to a more traditional way of handling $isDirty. The old way was far too memory/cpu intensive.
  • 1589a6325726698b9c9c38c0413304ccdb7ac04f fix ViewModelCollection reactivity for newly-added items in a weird edge case (see description in the test that was added in this commit).
  • e3aa94a1d39139a84095bfd7b03757dd3029563d Fix handling of $delete when item has no primary key - the item still needs to be removed from the parent collection.
  • 553cd3c94e999d9861a5c2fa71e307e76df4ebc0 ListViewModels now provide ViewModel instances through $items.
  • c0521afec9444529252f1df1ff609ea598b84b2b Add getter-only props for many-to-many collections.
  • 950520f316c6e83d28d6fd9512b6b8bb3ae39b57 Fix issue where existing ViewModel instances weren't preserved when using the ViewModel ctor's initialData param.
  • 7a61195cdff609b5887410aa6138e1440e8fc05e Handle recursive object structures with $loadFromModel/updateViewModelFromModel
  • 773430f7464583b35741f5aea410af57a9ff88fe Fix ViewModelCollections not being reactive for .push() calls (was mistakenly using Array.prototype.push, instead of the actual push from the instance's prototype which will end up being the one that Vue provides).
  • 0efda59fa9b40b2ab5423828ec6de4de3eb46af3 Added distanceFromNow options for valueDisplay
  • 19585214ef02b0903544c2c82b3e3c4b3e029087 Fixed a bug that was causing FK values to get set to undefined when both (a) their name did not match that of their related PK, and (b) the corresponding navigation prop of the FK is declared in the metadata AFTER the FK itself on the parent's props object.
  • b2ffbd55bcd09380bedd6e6708506ddedc835848 Make args objects on callers w/ args reactive.
  • 774099df48d0a4206fc3ccf3893a9c7383ff63b9 make the date format configurable for the display visitor
  • 1791ac469953c07f1ab99e7f2ca6d1f602121b23 Fix bad method name for $previousPage(), add more paging properties to list viewmodels.
  • 12ab7094eaaec5e43ba62829802c4325be913dd6 Failed requests should reject their promise, not resolve it with the error.
  • 5100c372f5064379941e6a4dc1e9a5b304b54c22 Despite my recollection that I did so, apparently I didn't actually regen the knockout project.
  • 2f79cd7f2aa9fe896b57a3ca6eb97022f3a481ab Fix #134 - Non-navigation collection properties are generating $addTo methods
  • 820a96062a161ff5b1e99c07d099054d542416af Fix missing semicolon, regen.
  • 961fcd2cca2af6ff7b5a48bef7cca91ba1410709 Remove BOMs from the start of our yaml files. I suspect that's what was causing them to break.
  • 0883a7e372e56eabb70c22c2d7046eb93ee0f3b9 Trying different syntax to fix the build maybe?
  • 829b492f3347b3b21c98f6444a52ad367fe291a3 Allow collection types in method parameters for Knockout. Fixes #135
  • c63d639a3ead5cff95bd9d198f5a8a97ca6e4b17 Bump fstream from 1.0.11 to 1.0.12 in /src/Coalesce.Web
  • 0277d562dd079a435b366cfec3f75f6689058fbe Bump jquery from 3.3.1 to 3.4.0 in /src/Coalesce.Web
  • 07086f666772fe51e25c96581854c2eabffbf9d2 Bump tar from 2.2.1 to 2.2.2 in /src/Coalesce.Web
  • ba434acfd5d2543fd0124a6ccb495ea7287d776d Bump bootstrap-sass from 3.3.7 to 3.4.1 in /src/Coalesce.Web
  • 001fdf299f0469d5a19b6da76489bf307a25b45a Bump knockout from 3.4.2 to 3.5.0 in /src/Coalesce.Web

This list of changes was auto generated.

v2.1.0

5 years ago
  • .NET Core 2.1 and ASP.NET Core 2.1 support.
  • Further work towards Coalesce.Vue

v2.0.3

5 years ago

v2.0.2

5 years ago

v2.0.1

5 years ago

v2.0.0

5 years ago