propel_facets 0.3.1.6 โ†’ 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c075aba77633255c589fc488b16edaf9b39100e30f183635b4898fae1f9ed91b
4
- data.tar.gz: 3d5a18465cc0fdf018982a96956b09a8131d572f9cd6323e13384b81a5ddadbb
3
+ metadata.gz: e3f07ad84b8f9ffcb5ff727e504673ad73ef159cc36248721ab20d66d6ec24de
4
+ data.tar.gz: c64098d43f6a6a21badd4a305cb6a30f0ff6e01e1caaa50fa3daec20fd9533f6
5
5
  SHA512:
6
- metadata.gz: 264b79faa90b0a91892ffe9b31132f9620d64f68fbf7fd14bf2c1cf864d1213376f5e657b1710c7e10c54e693b8c55839dd23337ac82f9e671f1a4c4eadd1f4a
7
- data.tar.gz: 67cac633cc4aaed0d28fd3b7cc0d85c97dc1166ae4f745a9803cb5691b3e99906c5c9b24b79f38d9e6a60a66fa962b89779c730cbe1e8388f0ef52cbd6ebdf9b
6
+ metadata.gz: 5e810ef92e93504f8dd4080067bdc31bda0a06fbeb5671393d9c3aa8adf72b704e23209601dea762831dccbde0660bd20066063bbb4a49a1359caca310ea0528
7
+ data.tar.gz: 3ca0308db75dad694d31b036aba0f03d0f0b3b32eb55bbce5f5f967e64a42c23e38b34d4f51569f0a02002ed3884bb2324fc0c3ef9949a99c14d4f90748a12b8
data/CHANGELOG.md CHANGED
@@ -14,6 +14,71 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
14
14
  - Metadata inclusion (pagination, counts, etc.)
15
15
  - Performance logging and optimization tools
16
16
 
17
+ ## [0.3.3] - 2025-01-XX
18
+
19
+ ### ๐ŸŽ‰ Major Features Added
20
+ - **Enhanced Facet System for Filtering**: Comprehensive improvements to support PropelApi's new dynamic filtering system
21
+ - **Smart Field Inclusion**: Automatic inclusion of boolean and datetime fields in `:short` facets for filtering compatibility
22
+ - **Exclusion List Support**: Configurable exclusion of specific fields (e.g., `created_at`, `updated_at`, `internal_flag`)
23
+ - **Filtering-Optimized Facets**: Facets now include all filterable fields to ensure API responses support client-side filtering
24
+
25
+ ### ๐Ÿ” Filtering Integration Enhancements
26
+ - **Boolean Field Support**: Enhanced facet templates to include boolean fields in `:short` facets
27
+ - Automatic detection and inclusion of boolean fields for filtering
28
+ - Configurable exclusion list for sensitive or internal boolean fields
29
+ - Consistent boolean field rendering across all model types
30
+ - **DateTime Field Support**: Improved datetime field handling in facets
31
+ - Automatic inclusion of datetime, date, and time fields in `:short` facets
32
+ - Configurable exclusion of timestamp fields (`created_at`, `updated_at`, `confirmed_at`)
33
+ - Better datetime field serialization for filtering operations
34
+
35
+ ### ๐Ÿ› ๏ธ Template System Improvements
36
+ - **Enhanced Facet Model Template**: Improved `facet_model_template.rb.tt` with filtering support
37
+ - Smart field inclusion logic for boolean and datetime fields
38
+ - Exclusion list configuration for sensitive fields
39
+ - Better template logic using `next` instead of `return` in select blocks
40
+ - **Improved Test Templates**: Enhanced test template generation for filtering compatibility
41
+ - Better boolean field testing in model, controller, and integration tests
42
+ - Improved datetime field testing patterns
43
+ - Enhanced fixture generation for filtering test scenarios
44
+
45
+ ### ๐Ÿ”ง Configuration & Customization
46
+ - **Flexible Field Exclusion**: Easy configuration of fields to exclude from facets
47
+ - `excluded_boolean_fields` list for sensitive boolean fields
48
+ - `excluded_datetime_fields` list for timestamp fields
49
+ - Template-based configuration for easy customization
50
+ - **Backward Compatibility**: Existing facet definitions continue to work without changes
51
+ - No breaking changes to existing facet configurations
52
+ - Enhanced functionality available through template updates
53
+
54
+ ### ๐Ÿงช Testing & Quality Assurance
55
+ - **Comprehensive Test Coverage**: Enhanced test templates for filtering scenarios
56
+ - Better boolean field testing patterns
57
+ - Improved datetime field testing coverage
58
+ - Enhanced integration test templates for filtering compatibility
59
+ - **Template Validation**: Improved template syntax and logic validation
60
+ - Fixed ERB template syntax issues with `next` vs `return` statements
61
+ - Better error handling in template generation
62
+ - Enhanced template consistency across all generators
63
+
64
+ ### ๐Ÿ”’ Security & Performance
65
+ - **Sensitive Field Protection**: Automatic exclusion of sensitive fields from public facets
66
+ - Password fields, tokens, and secrets automatically excluded
67
+ - Configurable exclusion lists for additional sensitive fields
68
+ - Better security for public API responses
69
+ - **Performance Optimization**: Efficient facet rendering for filtering operations
70
+ - Optimized field selection for filtering scenarios
71
+ - Better association handling for filtered queries
72
+ - Enhanced serialization performance
73
+
74
+ ## [0.3.2] - 2025-09-15
75
+
76
+ ### ๐Ÿ”ง Version Synchronization
77
+ - **Version Consistency**: Updated version to maintain consistency with PropelApi 0.3.2 critical generator improvements
78
+ - No functional changes in this release
79
+ - Synchronized release with PropelApi's enhanced generator destroy/rollback functionality
80
+ - Enhanced coordination with PropelApi's improved generator infrastructure and error handling
81
+
17
82
  ## [0.3.1.6] - 2025-09-13
18
83
 
19
84
  ### ๐Ÿ”ง Version Synchronization
@@ -2,6 +2,9 @@
2
2
 
3
3
  class ApplicationRecord < ActiveRecord::Base
4
4
  include ModelFacet
5
+
6
+ # Include PropelApi filtering if available
7
+ include PropelModelFiltersConcern if defined?(PropelModelFiltersConcern)
5
8
 
6
9
  primary_abstract_class
7
10
 
data/lib/propel_facets.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module PropelFacets
2
- VERSION = "0.3.1.6"
2
+ VERSION = "0.3.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: propel_facets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1.6
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Propel Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-13 00:00:00.000000000 Z
11
+ date: 2025-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails