# Commits in v3.1.69
fcf580d feat: group canonical with alternates for seo and opengraph + add LocaleCode class to get proper country codes from language shortcodes (ex: en -> en_GB)

# Commits in v3.1.68
397e29f feat: disable alternates tests for the time being
b5175c0 feat: reformat
a801892 feat: improve locale switches to better handle passed content (useful for sitemaps and other cases)
a19a4fc feat: modernize bundle linking to test changes in local env
1b82699 feat: add site context helper twig extension
d1a3520 feat: auto router manager, take into account querystring params for cache-keys
a30b058 feat: code cleaning

# Commits in v3.1.67
bcf8113 feat: fix title link by using locale-switches too
f87c247 feat: add ability to use locale-switchers in admin "see content" button + adapt backend locale switcher to new system
1c3663f feat: update backend flags
177c758 feat: refactor locale switcher templates
a8bf720 feat: pr review edits
63d3fd4 feat: fix locale-by-domain (dom A loc A, dom B loc B), correct handling of locale option in content routers (default and auto-router)
30b4e6a feat: add locale flag updater script + add frequently used flags + update old ones
ae7ee53 fix: load locales core from app_locales project
119b4c7 fix: get locale by domaine
3fcb363 feat: fix locale-by-domain (dom A loc A, dom B loc B, both same site)

# Commits in v3.1.66
ddf85c5 feat: auto add order by sequence on all SequencedInterface
f8eeb48 chore: add 4x to bitbucket pipelines
0b0cb3e doc: add link to channels issue
0680239 refacto: normalize env config
54243a1 chore: add monolog.yaml default config file
765de1d doc: remove asset-mapper on install
90b572d fix: add front firewall for admin bar

# Commits in v3.1.65
d4797a0 fix: add autoContentQueryBuilder in translatable repo

# Commits in v3.1.64
7259d47 fix: change way to retrieve current translation because filter() preserves array keys (just like array_filter)
32b700e doc: fix doc
7fc9124 doc: update readme
d81b014 chore: update install process
bdc7963 chore: update install process

# Commits in v3.1.63
259073d fix: dont use our deprecation inside our own code

# Commits in v3.1.62
396f06e feat: ignore double slash check on query
806a336 fix: route redirect feature
3f0f5cf feat: add interface to not auto-update entity date on entity update
a23677e fix: add site matching on redirections
9ca00bc chore: trigger bitbucket pipelines on all pull requests
8de91fc chore: add bitbucket-pipelines.yml for CI
d4649f4 chore: use image no Dockerfile
bc3abb8 test: fix SeoContentExtractorTest::supports

# Commits in v3.1.61
d70d6f2 fix: setter
087bdeb fix: remove nullable for alternates in SeoPage

# Commits in v3.1.60
5ae47c4 fix: subject can be a translation, not always a "main" entity (see src/Seo/EventListener/ContentMetadataEventListener.php:23)
166a84a feat: add utility for tag maintenance

# Commits in v3.1.59
553d7fc fix: revert construct deletion to avoid bcbreak
7b534cf fix: refactor and fixes for 3.1.56

# Commits in v3.1.58
a3e5b3c chore: merge conflict
1b0de3a Merge branch '3.1' into feature/chars-counter
39c32c5 feat: front chars-counter
3ccb41f feat: add chars-counter on seo inputs

# Commits in v3.1.57
84b4353 fix: delete multiple entities in one reload

# Commits in v3.1.56
b9b8886 refacto: SeoContentExtractor with tests
2462187 refacto: add real nullable
a01fb82 refacto: update comment
90a4b15 refacto: Alternate model
e87ef20 chore: update Dockerfile for use new version of sample
c5ed3e6 refacto: rename $seo to $seoPage
77064f9 fix: ExtractorInterface support definition
69a1c4f refacto: reformat test
366970e refacto: use getHomepage with local entityManager
90a2d6c refacto: reformat files
8836c06 refacto: add typing
ea69f6b test: ContentMetadataEventListener
5b7b971 test: ExtractorManager
2708da2 refacto: ContentMatcherListener with test
4af8fe3 test: ContentMatcherListener
f10e79d refacto: remove useless line
19dc61b refacto: MainContentRequestSubscriber cover by test
3218d80 refacto: remove useless line and use new init properties
9de0a8f refacto: remove useless line
aabecd2 refacto: add deprecated in ContentContext and update properties
51f2849 test: use IsNotFrontUrlTrait for MainContentRequestSubscriber
7db7d03 refacto: IsNotFrontUrlTrait::isNotFrontUrl
1e5f22b test: IsNotFrontUrlTrait
658816b test: MainContentRequestSubscriber
a9160af test: redirects match
f6fdf7a test: fix tests redirect
d00e074 chore: upgrade phpunit config
3d2aff3 chore: update Makefile
f635f97 chore: update docker config

# Commits in v3.1.55
6100889 fix: PR402 only apply site context if SiteInterface
da9a878 fix: PR402 fix new instance from interface
88bc7ee fix: PR402 clean
7f967b2 fix: PR402 i am a boulet
98d8dd0 fix: PR402 simplify new instances for doctrine interface aliases
c6200a3 fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace ter
0e285ff fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace bis
0246d8a fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace
1323dd3 fix: PR402 add docs about uniqueness preservation during migrations
d00ef2e fix: PR402 review fixes
282ba69 Merge branch '3.1' into feat/administrator-user-doctrine-interfaces
335fe57 feat: add ability to merge administrator with app-land user (and register AA entities via interfaces to allow entity override in app-land)

# Commits in v3.1.54
07fd23b refacto: rename default builder for better comprehension and remove abstraction
a7c16b0 fix: remove useless param
557750c Merge branch '3.1' into bugfix/sitemap-builder
531d223 fix: sitemap config
e9544f6 feat: add abstraction to sitemap builders to facilitate creation of custom builders
201f04a fix: prevent section to being processed in ConfigSitemapBuilder if already processed in custom builder

# Commits in v3.1.53
03ba87f fix: remove dupplicate content in sitemap

# Commits in v3.1.52
c0dfef1 fix: execute RedirectEventListener just before Symfony RouterListener

# Commits in v3.1.51
307393d feat: change admin_bar text
c2fc1e5 fix: set updated at on entity creation
893ef0a fix: fix file input label updating on change

# Commits in v3.1.50
e49cd73 fix: 404 on bad locale
087fd2a fix: broken redirections

# Commits in v3.1.49
19eeff7 Merge branch '3.1' into feature/admin-button
2614e5c feat: add 'update' link on admin front button
03b1e90 chore: add imagine config in bootstrap files

# Commits in v3.1.48
bd1ad91 feat: multiline custom file input behaviour when uploading several files at once

# Commits in v3.1.47
1a2602b fix: add locale checks on sitematcher + empty param checks

# Commits in v3.1.46
0cbd6dc doc: changelog
136eca5 fix: routes priority to let admin routes pass before project ones
ad835ff fix: don't set link on BC item if no url

# Commits in v3.1.45
f1001b3 doc: changelog
c489f60 fix: bad url for homepage if locale in url (was a bad override due to specific project)
b0058e5 doc: update changelog

# Commits in v3.1.44
c6dee76 fix: add default behavior for brick properties when duplicate

# Commits in v3.1.43
5538c25 feat: upgrade required Symfony version
1c09249 Merge branch '3.1' into bugfix/duplicators
5736e54 fix: broken images on brick duplicators
708f62c fix: add +x to tag scripts

# Commits in v3.1.42
3614d91 fix: docs
b5841fb fix: add changelog changes to suffix twig method names
3493e7d fix: cache suffix bundle twig method names
5b828d8 feat/fix: add deploy.sh + sample env file + integrate cache suffix library to aa + clean core bundle
c61c5f6 fix: remove unused recipes replacement feature
03973c3 fix: fix administrator->getRoles getter following symfony good practices
74f03b9 fix: type some methods

# Commits in v3.1.41
7cd2c9e fix: add robots tag process

# Commits in v3.1.40
85f7025 fix: exclude duplicator interface from service registration
65f6fb8 fix: remove useless package notices
05d50bd Merge branch '3.1' into feat/3.1-feat-evols-n-fixes
8c28b3e feat: refactor duplicators + add attribute handling + possibility to shut down doctrine some subscribers when wanted + add LinkedMediaDuplicator
f1bb27d fix: remove useless check
a4e4986 fix: Leo is angry at me, help
98d62da feat: improve media lib, add mappings and mapping config, use proper mappings labels, permit mime types config, max preview size, and private/public mappings
3542237 fix: add deprecated classes valid alternatives
a5e75f6 fix: normalize and depreciate content abstracts (content, backendcontent, seocontent, etc)
7d55c4d fix: update "mini" docker stack && makefile
07f5348 fix: update rsync command
69f7a81 fix: prevent from rewriting response seo content for streams and binary responses
3d19f02 fix: fix imported RuntimeException
33e6b77 fix: repository compiler pass, deep entity reading, permit to use namespaces and keep AA repository auto-declaration feature
2b3a670 fix: ContentFactory: add current translation loading after content creation (independent of how translations were created)
089b56f fix: properly implement redirect interface on redirect model for duplicator to work properly
4d76b06 fix: prevent rich select js from erroring when expanded in radio/checkbox
4dd5da0 fix: add form type config hint

# Commits in v3.1.39
d4aa065 feat: add Twitter microdata integration
1a2b269 refacto: rename routing files

# Commits in v3.1.38
6dbde8a refacto: rename routing files
ecd42f1 refacto: create generic route loader for 'aa' extra routes
2f4ade0 feat: add admin route to check aa version
4ae69a6 feat: comment useless config for duplicators

# Commits in v3.1.37
6adcd04 fix: get parameter redirection

# Commits in v3.1.36
c232457 fix: missing domain with not exists locale

# Commits in v3.1.35
aa74524 fix: cookie banner save states

# Commits in v3.1.34
98b1d9b fix: prevent multiple initialization of extensions

# Commits in v3.1.33
96ba146 fix: remove double count for $tableDepthCounter

# Commits in v3.1.32
13bbd92 feat-fix: now we can duplicate menu

# Commits in v3.1.31
93f2f4f fix: prevent autofill_parameter to be null

# Commits in v3.1.30
929e8c6 fix: fix auto content matching, opt-out of matching if autofill config is too complex (only handle first-level parameters check)
162cf9e doc: type-guesser

# Commits in v3.1.29
30e8f4b fix: use dynamic config for seo admin builder
d702029 fix: locale initialization
b043763 fix: bad conflicts resolution
c37b52a fix: build after merge
8a3e55c Merge branch '3.1' into feature/brick-expand
d973b57 fix: build after remove log
e2ea5eb fix: remove log
e7a9a2b feature: sticky wysiwyg and expand brick
2597602 fix: bad conditions on item_actions presence
893c219 fix: remove default view action in admin entity update
5ebbdb1 fix: remove bad php version property
2c9af8a chore: update redirects config
d5515fa fix: fix hard BC break for sidebar section feature removal
b6eb555 chore: remove old assets
7363ec4 fix: remove useless sidebar section
f74fc91 fix: add router default to chain action if "action_chain" is configured and aa_content_path called without "action"
04de173 fix: FileVerifier on mime extensions array & strtolower
859b07c fix: fix router translated url generation
22b4750 fix: assignation local code
deca016 fix: skip already-uploaded file as they are not present in /tmp dir when previously handled
386b08c fix: no redirection if no exact match

# Commits in v3.1.28
e219451 fix: bad conditions on item_actions presence

# Commits in v3.1.27
2ef54bb fix: remove default view action in admin entity update
5d7589f chore: update redirects config

# Commits in v3.1.26
183b49e doc: update changelog
e02c055 feat: add new datepicker with month/year format
0928f94 fix: use context helper instead of locale resolver
eb772ae fix: remove dump
d942bec fix: homepage link in breadcrumbs

# Commits in v3.1.25
4c005fc fix: fix hard BC break for sidebar section feature removal

# Commits in v3.1.24
aeef4f2 fix: fix aa_content_path for default behavior
dd9516d chore: remove old assets
e1ed7e3 fix: remove useless sidebar section
6a640b6 fix: add router default to chain action if "action_chain" is configured and aa_content_path called without "action"

# Commits in v3.1.23
b5e3e1e fix: prepend domain on breadcrumbs schema items
82fd06c doc: disable gdpr process
36a56a3 doc: gitignore media dir
ac7f46d doc: update readme

# Commits in v3.1.22
51fb5a3 fix: add strtolower check on extension file

# Commits in v3.1.21
44693f8 fix: main assets path
54e40bf feat: add option to disable gdpr in js (add 'document.body.aa_disable_gdpr = true;' in your project main js)

# Commits in v3.1.20
9667134 doc: update installation process in readme
f5924b5 fix: add fontawesome-subset dependencies in bootstrap files
eac8da7 fix: remove blocking comma in conf
5232104 fix: delete logo property in site config

# Commits in v3.1.19
a09708a fix: fix router translated url generation
57a3dcf doc: add microdata doc

# Commits in v3.1.18
a7a89e2 fix: better fixing uploaded files

# Commits in v3.1.17
a981db9 fix: repair in_array bug on object check for media uploading

# Commits in v3.1.16
dba69c8 chore: rollabck composer doctrine orm version

# Commits in v3.1.15
4378870 chore: accept doctrine orm 3.0

# Commits in v3.1.14
b43fad1 feat: FileVerifier on mime extensions array

# Commits in v3.1.13
9c17ddf fix: remove log system for now, bugfix for content builder

# Commits in v3.1.12
20155d9 fix: assignation local code

# Commits in v3.1.11
20dae26 feat: add extra properties to breadcrumb items & option to display link on last item
d7399a6 fix: skip already-uploaded file as they are not present in /tmp dir when previously handled
1b1e2cf fix: no redirection if no exact match
fd9c186 feat: breadcrumb, try to get model._tr.name if no breadcrumb override is configured
12f2f15 feat: update wording regarding jsonld admin
06edf6f feat: add SeoContent && SeoContentTranslation to changelog

# Commits in v3.1.10
e8a2da3 feat: final adjusts regarding microdata && media library
22e0929 feat: merge microdata (+ media lib) feature and re-adjust schema.org tools/usage + improve route loading for bundle
d6690b5 Merge branch '3.1' into feature/3.1-microdata-merge
866b12e Merge branch '3.1' into feature/structureddata_and_library
d6f3927 feat: add OpenGraph, Schema.org override & library file/image handling (with linking system) + serialization groups for aa models + various refactor

# Commits in v3.1.9
23455f2 fix: fix breadcrumbs template configuration

# Commits in v3.1.8
e7db6e8 fix: sync getters/setters
8221aa2 refacto: MenuItem nullable
ab317ba refacto: remove useless param
15075c3 refacto: Site nullable
2c3dced refacto: Log nullable
5643786 refacto: Locale nullable
f7dd4ee refacto: nullable variables
32bb23c refacto: use IdTrait and fix nullable on $templatedAt
23707e4 refacto: CookieConsent nullable
970b1cb refacto: remove useless nullable in AdministratorModel
625354d refacto: use IdTrait in Administrator

# Commits in v3.1.7
0b2c76a fix: hierarchy, add SelfHierarchyInterface type when possible
b18bb58 fix: update webpack asset building resources & config
edb7aa6 fix: fix page bootstrap file, remove attribute for Breadcrumbs
9c6c274 fix: fix page bootstrap file
c42a2ec fix: fix hierarchy tools for valid model

# Commits in v3.1.6
cd32246 fix: hierarchy fix
fd44c98 fix: properties accessibility on SelfHierarchyTrait & add child methods
7198a9f fix: remove duplicated properties in Page entity
6649e2e feat: normalize group_actions and item_actions for list-type actions
f1562d1 feat: allow list-type actions only using action suffix
08dcff5 feat: fix type guessers and permit to guess "collection" type entry sub-form-field
3a6d82d feat: add listing hook
2f780a1 Merge branch '3.1' into feature/3.1-evols
aefa06a fix: add protected PA property
a8b788b feat: add logic tester and form field "if" to dynamically add/remove fields in forms

# Commits in v3.1.5
15ace9c fix: sitemap section disabling && by-content disable was not working properly
9d0fe94 fix: extract verifier to dedicated verifier service
f7f3e89 fix: prevent multi extension files & path incompatibility with UploadedFile class
af31d87 fix: fix upload vulnerability

# Commits in v3.1.4
678f6ad fix: remove dump

# Commits in v3.1.3
a748871 feat: auto-add breadcrumbs fields in admin if content supports it

# Commits in v3.1.2
ecc0ea2 feat: breadcrumbs, use chain routing in breadcrumbs

# Commits in v3.1.1
fbea8ed feat: breadcrumbs, add type checking on fragments
dfb9757 fix: fix breadcrumbs generation when no main content is provided

# Commits in v3.1.0
01c8008 Merge branch '3.0' into feature/3.1-breadcrumbs
435d493 feature: add breadcrumbs internal handling

# Commits in v3.0.67
2daaa0c fix: delete multiple entities in one reload

# Commits in v3.0.66
a169f41 fix: remove dupplicate content in sitemap

# Commits in v3.0.65
35432c6 fix: execute RedirectEventListener just before Symfony RouterListener

# Commits in v3.0.64
37036f2 fix: 404on bad locale
859c4aa fix: broken redirections

# Commits in v3.0.63
f26ea85 fix: add locale checks on sitematcher + empty param checks

# Commits in v3.0.62
5743e87 fix: get parameter redirection

# Commits in v3.0.61
8faa2b6 fix: missing domain with not exists locale

# Commits in v3.0.60
aa66f05 fix: prevent multiple initialization of extensions

# Commits in v3.0.59
ee4788c fix: typo
e483197 fix: add new exception to throw when parameter is null
1960c4e fix: force requirements on route params
3b00e11 fix: prevent autofill_parameter to be null
7d085de fix: locale initialization

# Commits in v3.0.58
d973b57 fix: build after remove log
e2ea5eb fix: remove log
e7a9a2b feature: sticky wysiwyg and expand brick

# Commits in v3.0.57
2597602 fix: bad conditions on item_actions presence

# Commits in v3.0.56
893c219 fix: remove default view action in admin entity update

# Commits in v3.0.55
5ebbdb1 fix: remove bad php version property
2c9af8a chore: update redirects config

# Commits in v3.0.54
d5515fa fix: fix hard BC break for sidebar section feature removal

# Commits in v3.0.53
b6eb555 chore: remove old assets
7363ec4 fix: remove useless sidebar section
f74fc91 fix: add router default to chain action if "action_chain" is configured and aa_content_path called without "action"

# Commits in v3.0.52
04de173 fix: FileVerifier on mime extensions array & strtolower

# Commits in v3.0.51
859b07c fix: fix router translated url generation

# Commits in v3.0.50
22b4750 fix: assignation local code

# Commits in v3.0.49
deca016 fix: skip already-uploaded file as they are not present in /tmp dir when previously handled

# Commits in v3.0.48
386b08c fix: no redirection if no exact match

# Commits in v3.0.47
e7db6e8 fix: sync getters/setters
15ace9c fix: sitemap section disabling && by-content disable was not working properly
9d0fe94 fix: extract verifier to dedicated verifier service
f7f3e89 fix: prevent multi extension files & path incompatibility with UploadedFile class
af31d87 fix: fix upload vulnerability
8221aa2 refacto: MenuItem nullable
ab317ba refacto: remove useless param
15075c3 refacto: Site nullable
2c3dced refacto: Log nullable
5643786 refacto: Locale nullable
f7dd4ee refacto: nullable variables
32bb23c refacto: use IdTrait and fix nullable on $templatedAt
23707e4 refacto: CookieConsent nullable
970b1cb refacto: remove useless nullable in AdministratorModel
625354d refacto: use IdTrait in Administrator

# Commits in v3.0.46
539d730 fix: fix auto-router cache key generation, back to type:id:splid key, alternatives were either slow or incomplete

# Commits in v3.0.45
c9911ea fix: add documentation link in readme
b553c64 Merge remote-tracking branch 'origin/feature/3.0-fixes' into feature/3.0-fixes
c096361 Merge branch '3.0' into feature/3.0-fixes
3b0e9ed fix: fix auto-router cache key generation to handle sub-objects params (in the context of mutated object url generation)
98ab4d0 fix: fix auto-router property path when site is translated
171cafd fix: fix autorouter cache key generation to allow multiple urls when mutating subject content

# Commits in v3.0.44
b36463d Merge branch '3.0' into bugfix/redirections-imports
ceafd22 fix: missing entity manager in controller
c386922 fix: twig block fix after template refacto
4147550 refacto: git scripts doc
f826f73 refacto: git scripts

# Commits in v3.0.43
ed59c2a chore: build assets
409e4a8 fix: auto scrollTo sidebar

# Commits in v3.0.42
6a65303 fix: router autofill parameter bad property replacing

# Commits in v3.0.41
82aafa5 fix: remove locale parameter if site is not multilingual

# Commits in v3.0.40
f625557 fix: fix auto* methods in content repository
06c1aa2 fix: add auto router reference-keeping to improve perf on redundant contents

# Commits in v3.0.39
e1e3acc refacto: disabling sitemap from config

# Commits in v3.0.38
cccc9be feat: properly handle canonical overrides in sitemaps

# Commits in v3.0.37
a574ca7 fix: Log entity mapping
748fb8e fix: error on entity deletion if FK constraint fail (depending on db name)

# Commits in v3.0.36
b1fca07 fix: Logtail output format

# Commits in v3.0.35
30f0a24 fix: Logtail new usage

# Commits in v3.0.34
71fe753 fix: return '#null' if null path in webpFilter

# Commits in v3.0.33
89a69ec refacto: remove robots.txt locale if single lang

# Commits in v3.0.32
a74507c refacto: yaml indentation
37d3d6a fix: typo
65fe0f3 refacto: protected method EntityPrevNextHelper
def16c3 fix: get parent required on FileType and force required false on ImageType already saved
e3cdf39 fix: gitignore
d154ab8 fix: typo
61370f0 fix: init duplicator service
9d295d2 fix: get host without port

# Commits in v3.0.31
58abf5b refacto: nullable properties for avoid migrations errors

# Commits in v3.0.30
6b49e13 fix: select dropdown brick

# Commits in v3.0.29
9565be6 feat: use $qbOptions in EntityFinder
874692b feat: add $qbOptions on EntityFilterModel

# Commits in v3.0.28
a88ce48 fix: generate image webp in cache

# Commits in v3.0.27
5d70978 fix: add locale parameter if site is multilingual

# Commits in v3.0.26
9b56d22 fix: fix sitemap generation command

# Commits in v3.0.25
c41c16d fix: 404 on /media/ site matching
56678f2 fix: generate sitemap urls using content "chain_action" config (usually for category url levels)
198a6a9 fix: disable site matching for public dir /media/*

# Commits in v3.0.24
99f8b19 fix: no alternate lang if no multilingual

# Commits in v3.0.23
1881a6f chore: build assets
877b63d feat: add bootstrap Tab plugin
a0446d3 chore: build assets
0ea253b refacto: remove useless line
83f8d7c fix: add assets
c721176 refacto: re-format files

# Commits in v3.0.22
bd8eccb fix: add missing method in repo
9018f4a refacto: logger service with interface
a47bfe7 Merge branch '3.0' into feature/loggable
779a230 refacto: use new method from Symfony but dosen't work to
15b6342 refacto: isLoggable move in service
ff5f0ed feat: new command for clear log
8667a35 refacto: limit repo

# Commits in v3.0.21
18ef847 fix: use property accessor for exporting
ed5f14c fix: add sitemap safe url generation parameter
11ff922 fix: refactor missing translation creation to ContentFactory service
2a4b5a5 refacto: auto router simplify
47ff309 fix: correct slug generation when none is given too
e011316 fix: contents config, force slug as key to avoid duplicates (from automatic array key generation in cfg)

# Commits in v3.0.20
1c3f02a chore: build assets
e9c5387 refacto: remove all log JS useless

# Commits in v3.0.19
a2a7db7 fix: menu item bug, apply content translation creation to root element (hidden) if missing
b58cabc fix: fix menu item root requesting
38e950a fix: move menuitem root request after item resolving (and translations creating)
d415a1c fix: sitemap generation ram decrease
a8f16b4 fix: create default translation on menuitem when editing for first time in new locale

# Commits in v3.0.18
63fc9f0 fix: default brick collection now no longer delete contents when removed from collection setting + brick configurator helper methods to normalize form handling + add brickBuilder error handling when corrupted settings + add "no sorting" parameter on RichSelect + RichEntityType
6b1b124 fix: add doctrine array to json regex for parsing migration-generated sql for converting values
1720bb9 Merge branch '3.0' into feature/mf-3.0.x
932b179 fix: remove cache warmer for now
b24381e fix: handle SeoMetadata bypass in sitemap generator

# Commits in v3.0.17
1e95d1b fix: homepage

# Commits in v3.0.16
c549b0b fix: content reference in menu

# Commits in v3.0.15
5faadf4 fix: search filter entity admin
1dda198 Merge remote-tracking branch 'origin/3.0' into 3.0
b09726e fix: convert to json with keeping the unicode
9e54d05 fix: set type EntitySetting auto on form type entityType

# Commits in v3.0.14
a8f4f2f fix: types
36642ab feat: remove useless image package in dockerfile
f007bca Revert "feat: check if domain is multilinguage"
99ceded feat: check if domain is multilinguage
4fd2c4b fix: fix prev/next feature in admin
0f27fd4 fix: only use contentQb if repository is AbstractContentRepo
0ea3827 feat: add brick resolver command to find parent content

# Commits in v3.0.13
3213592 fix: add version tag listing script
e2b9162 Merge branch '3.0' into feature/mf-3.0.x
c415ea1 fix: remove hardcoded fr locale
d90876c fix: use content config + new sitemap config to auto-retrieve sitemap structure and links + add repository "auto" repo find methods to retrieve content following Publishable / PublishTimePeriod interfaces

# Commits in v3.0.12
39b82a1 fix: fix error when running entity listing js on non-listing pages

# Commits in v3.0.11
51f667f Merge branch '3.0' into feature/mf-3.0.x
0fd17f4 fix: rework SiteContext to fix context loading bugs + fix sitemap (render, cache, command)

# Commits in v3.0.10
034281b fix: permit to generate index actions without retrieving entity

# Commits in v3.0.9
a77c495 fix: fix content router param checking
5db87d6 fix: remove duplicate function for slugAdmin content retrieving + add associated doc

# Commits in v3.0.8
0db3139 fix: alternate generation when route is localized

# Commits in v3.0.7
9740a76 Merge branch '3.0' into feature/mf-3.0.x
5dcc21f fix: fix alternate generation when using multilang
8530dec fix: simplify chain action method + type action as string

# Commits in v3.0.6
813ae5b feat: remove useless Extension files

# Commits in v3.0.5
472265d fix: fix AA listing pagination + boostrap plugin naming
de85472 fix: remove slugger service alias

# Commits in v3.0.4
2d1d320 feat: remove cocur/slugify dep + adapt slugger to symfony ascii slugger

# Commits in v3.0.3
9206596 fix: fix DI for locale extension
98fefd8 feat: dissociate frontend locale switcher from backend one
52f6805 feat: add slugAdmin content resolving from twig 'aa_content_path' func
7339906 fix: fix DI in content controllers

# Commits in v3.0.2
d1373c2 feat: add tag move process
8135faa fix: fix template path
b1139f8 feat: fix backend entity layout + remove jquery in most admin areas + fix back to list link + normalize locale switcher in admin + normalize file naming in assets + extract inline styles into proper rules + rework sidebar + update docker

# Commits in v3.0.1
2c2d945 feat: fix brick build DI & constructor

# Commits in 3.1 after v3.0
fcf580d feat: group canonical with alternates for seo and opengraph + add LocaleCode class to get proper country codes from language shortcodes (ex: en -> en_GB)
397e29f feat: disable alternates tests for the time being
b5175c0 feat: reformat
a801892 feat: improve locale switches to better handle passed content (useful for sitemaps and other cases)
a19a4fc feat: modernize bundle linking to test changes in local env
1b82699 feat: add site context helper twig extension
d1a3520 feat: auto router manager, take into account querystring params for cache-keys
a30b058 feat: code cleaning
bcf8113 feat: fix title link by using locale-switches too
f87c247 feat: add ability to use locale-switchers in admin "see content" button + adapt backend locale switcher to new system
1c3663f feat: update backend flags
177c758 feat: refactor locale switcher templates
a8bf720 feat: pr review edits
63d3fd4 feat: fix locale-by-domain (dom A loc A, dom B loc B), correct handling of locale option in content routers (default and auto-router)
30b4e6a feat: add locale flag updater script + add frequently used flags + update old ones
ae7ee53 fix: load locales core from app_locales project
119b4c7 fix: get locale by domaine
ddf85c5 feat: auto add order by sequence on all SequencedInterface
3fcb363 feat: fix locale-by-domain (dom A loc A, dom B loc B, both same site)
f8eeb48 chore: add 4x to bitbucket pipelines
0b0cb3e doc: add link to channels issue
0680239 refacto: normalize env config
54243a1 chore: add monolog.yaml default config file
765de1d doc: remove asset-mapper on install
90b572d fix: add front firewall for admin bar
d4797a0 fix: add autoContentQueryBuilder in translatable repo
7259d47 fix: change way to retrieve current translation because filter() preserves array keys (just like array_filter)
32b700e doc: fix doc
7fc9124 doc: update readme
d81b014 chore: update install process
bdc7963 chore: update install process
259073d fix: dont use our deprecation inside our own code
396f06e feat: ignore double slash check on query
806a336 fix: route redirect feature
3f0f5cf feat: add interface to not auto-update entity date on entity update
a23677e fix: add site matching on redirections
9ca00bc chore: trigger bitbucket pipelines on all pull requests
8de91fc chore: add bitbucket-pipelines.yml for CI
d4649f4 chore: use image no Dockerfile
bc3abb8 test: fix SeoContentExtractorTest::supports
d70d6f2 fix: setter
087bdeb fix: remove nullable for alternates in SeoPage
5ae47c4 fix: subject can be a translation, not always a "main" entity (see src/Seo/EventListener/ContentMetadataEventListener.php:23)
166a84a feat: add utility for tag maintenance
553d7fc fix: revert construct deletion to avoid bcbreak
7b534cf fix: refactor and fixes for 3.1.56
a3e5b3c chore: merge conflict
1b0de3a Merge branch '3.1' into feature/chars-counter
39c32c5 feat: front chars-counter
84b4353 fix: delete multiple entities in one reload
b9b8886 refacto: SeoContentExtractor with tests
2462187 refacto: add real nullable
a01fb82 refacto: update comment
90a4b15 refacto: Alternate model
e87ef20 chore: update Dockerfile for use new version of sample
c5ed3e6 refacto: rename $seo to $seoPage
6100889 fix: PR402 only apply site context if SiteInterface
da9a878 fix: PR402 fix new instance from interface
88bc7ee fix: PR402 clean
7f967b2 fix: PR402 i am a boulet
98d8dd0 fix: PR402 simplify new instances for doctrine interface aliases
c6200a3 fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace ter
0e285ff fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace bis
0246d8a fix: PR402 fix bad repository given to administrator because of DynamicEntity namespace
1323dd3 fix: PR402 add docs about uniqueness preservation during migrations
d00ef2e fix: PR402 review fixes
282ba69 Merge branch '3.1' into feat/administrator-user-doctrine-interfaces
07fd23b refacto: rename default builder for better comprehension and remove abstraction
335fe57 feat: add ability to merge administrator with app-land user (and register AA entities via interfaces to allow entity override in app-land)
a7c16b0 fix: remove useless param
557750c Merge branch '3.1' into bugfix/sitemap-builder
531d223 fix: sitemap config
77064f9 fix: ExtractorInterface support definition
69a1c4f refacto: reformat test
366970e refacto: use getHomepage with local entityManager
90a2d6c refacto: reformat files
8836c06 refacto: add typing
ea69f6b test: ContentMetadataEventListener
5b7b971 test: ExtractorManager
2708da2 refacto: ContentMatcherListener with test
4af8fe3 test: ContentMatcherListener
f10e79d refacto: remove useless line
19dc61b refacto: MainContentRequestSubscriber cover by test
3218d80 refacto: remove useless line and use new init properties
9de0a8f refacto: remove useless line
aabecd2 refacto: add deprecated in ContentContext and update properties
51f2849 test: use IsNotFrontUrlTrait for MainContentRequestSubscriber
7db7d03 refacto: IsNotFrontUrlTrait::isNotFrontUrl
1e5f22b test: IsNotFrontUrlTrait
658816b test: MainContentRequestSubscriber
a9160af test: redirects match
f6fdf7a test: fix tests redirect
03ba87f fix: remove dupplicate content in sitemap
c0dfef1 fix: execute RedirectEventListener just before Symfony RouterListener
3ccb41f feat: add chars-counter on seo inputs
d00e074 chore: upgrade phpunit config
3d2aff3 chore: update Makefile
f635f97 chore: update docker config
e9544f6 feat: add abstraction to sitemap builders to facilitate creation of custom builders
201f04a fix: prevent section to being processed in ConfigSitemapBuilder if already processed in custom builder
307393d feat: change admin_bar text
c2fc1e5 fix: set updated at on entity creation
893ef0a fix: fix file input label updating on change
e49cd73 fix: 404 on bad locale
087fd2a fix: broken redirections
19eeff7 Merge branch '3.1' into feature/admin-button
2614e5c feat: add 'update' link on admin front button
03b1e90 chore: add imagine config in bootstrap files
bd1ad91 feat: multiline custom file input behaviour when uploading several files at once
1a2602b fix: add locale checks on sitematcher + empty param checks
0cbd6dc doc: changelog
136eca5 fix: routes priority to let admin routes pass before project ones
ad835ff fix: don't set link on BC item if no url
f1001b3 doc: changelog
c489f60 fix: bad url for homepage if locale in url (was a bad override due to specific project)
b0058e5 doc: update changelog
c6dee76 fix: add default behavior for brick properties when duplicate
5538c25 feat: upgrade required Symfony version
1c09249 Merge branch '3.1' into bugfix/duplicators
5736e54 fix: broken images on brick duplicators
708f62c fix: add +x to tag scripts
3614d91 fix: docs
b5841fb fix: add changelog changes to suffix twig method names
3493e7d fix: cache suffix bundle twig method names
5b828d8 feat/fix: add deploy.sh + sample env file + integrate cache suffix library to aa + clean core bundle
c61c5f6 fix: remove unused recipes replacement feature
03973c3 fix: fix administrator->getRoles getter following symfony good practices
74f03b9 fix: type some methods
7cd2c9e fix: add robots tag process
85f7025 fix: exclude duplicator interface from service registration
65f6fb8 fix: remove useless package notices
05d50bd Merge branch '3.1' into feat/3.1-feat-evols-n-fixes
8c28b3e feat: refactor duplicators + add attribute handling + possibility to shut down doctrine some subscribers when wanted + add LinkedMediaDuplicator
f1bb27d fix: remove useless check
a4e4986 fix: Leo is angry at me, help
98d62da feat: improve media lib, add mappings and mapping config, use proper mappings labels, permit mime types config, max preview size, and private/public mappings
3542237 fix: add deprecated classes valid alternatives
a5e75f6 fix: normalize and depreciate content abstracts (content, backendcontent, seocontent, etc)
7d55c4d fix: update "mini" docker stack && makefile
07f5348 fix: update rsync command
69f7a81 fix: prevent from rewriting response seo content for streams and binary responses
3d19f02 fix: fix imported RuntimeException
33e6b77 fix: repository compiler pass, deep entity reading, permit to use namespaces and keep AA repository auto-declaration feature
2b3a670 fix: ContentFactory: add current translation loading after content creation (independent of how translations were created)
089b56f fix: properly implement redirect interface on redirect model for duplicator to work properly
4d76b06 fix: prevent rich select js from erroring when expanded in radio/checkbox
d4aa065 feat: add Twitter microdata integration
1a2b269 refacto: rename routing files
4dd5da0 fix: add form type config hint
6dbde8a refacto: rename routing files
ecd42f1 refacto: create generic route loader for 'aa' extra routes
2f4ade0 feat: add admin route to check aa version
4ae69a6 feat: comment useless config for duplicators
6adcd04 fix: get parameter redirection
c232457 fix: missing domain with not exists locale
aa74524 fix: cookie banner save states
98b1d9b fix: prevent multiple initialization of extensions
96ba146 fix: remove double count for $tableDepthCounter
13bbd92 feat-fix: now we can duplicate menu
93f2f4f fix: prevent autofill_parameter to be null
929e8c6 fix: fix auto content matching, opt-out of matching if autofill config is too complex (only handle first-level parameters check)
162cf9e doc: type-guesser
30e8f4b fix: use dynamic config for seo admin builder
d702029 fix: locale initialization
b043763 fix: bad conflicts resolution
c37b52a fix: build after merge
8a3e55c Merge branch '3.1' into feature/brick-expand
d973b57 fix: build after remove log
e2ea5eb fix: remove log
e7a9a2b feature: sticky wysiwyg and expand brick
2597602 fix: bad conditions on item_actions presence
e219451 fix: bad conditions on item_actions presence
2ef54bb fix: remove default view action in admin entity update
893c219 fix: remove default view action in admin entity update
5d7589f chore: update redirects config
5ebbdb1 fix: remove bad php version property
2c9af8a chore: update redirects config
183b49e doc: update changelog
e02c055 feat: add new datepicker with month/year format
0928f94 fix: use context helper instead of locale resolver
eb772ae fix: remove dump
d942bec fix: homepage link in breadcrumbs
d5515fa fix: fix hard BC break for sidebar section feature removal
4c005fc fix: fix hard BC break for sidebar section feature removal
b6eb555 chore: remove old assets
7363ec4 fix: remove useless sidebar section
aeef4f2 fix: fix aa_content_path for default behavior
f74fc91 fix: add router default to chain action if "action_chain" is configured and aa_content_path called without "action"
dd9516d chore: remove old assets
e1ed7e3 fix: remove useless sidebar section
6a640b6 fix: add router default to chain action if "action_chain" is configured and aa_content_path called without "action"
b5e3e1e fix: prepend domain on breadcrumbs schema items
04de173 fix: FileVerifier on mime extensions array & strtolower
82fd06c doc: disable gdpr process
36a56a3 doc: gitignore media dir
ac7f46d doc: update readme
51fb5a3 fix: add strtolower check on extension file
44693f8 fix: main assets path
54e40bf feat: add option to disable gdpr in js (add 'document.body.aa_disable_gdpr = true;' in your project main js)
9667134 doc: update installation process in readme
f5924b5 fix: add fontawesome-subset dependencies in bootstrap files
eac8da7 fix: remove blocking comma in conf
5232104 fix: delete logo property in site config
a09708a fix: fix router translated url generation
859b07c fix: fix router translated url generation
57a3dcf doc: add microdata doc
a7a89e2 fix: better fixing uploaded files
a981db9 fix: repair in_array bug on object check for media uploading
dba69c8 chore: rollabck composer doctrine orm version
4378870 chore: accept doctrine orm 3.0
b43fad1 feat: FileVerifier on mime extensions array
9c17ddf fix: remove log system for now, bugfix for content builder
22b4750 fix: assignation local code
20155d9 fix: assignation local code
20dae26 feat: add extra properties to breadcrumb items & option to display link on last item
d7399a6 fix: skip already-uploaded file as they are not present in /tmp dir when previously handled
deca016 fix: skip already-uploaded file as they are not present in /tmp dir when previously handled
1b1e2cf fix: no redirection if no exact match
386b08c fix: no redirection if no exact match
fd9c186 feat: breadcrumb, try to get model._tr.name if no breadcrumb override is configured
12f2f15 feat: update wording regarding jsonld admin
06edf6f feat: add SeoContent && SeoContentTranslation to changelog
e8a2da3 feat: final adjusts regarding microdata && media library
22e0929 feat: merge microdata (+ media lib) feature and re-adjust schema.org tools/usage + improve route loading for bundle
d6690b5 Merge branch '3.1' into feature/3.1-microdata-merge
23455f2 fix: fix breadcrumbs template configuration
e7db6e8 fix: sync getters/setters
866b12e Merge branch '3.1' into feature/structureddata_and_library
0b2c76a fix: hierarchy, add SelfHierarchyInterface type when possible
b18bb58 fix: update webpack asset building resources & config
edb7aa6 fix: fix page bootstrap file, remove attribute for Breadcrumbs
9c6c274 fix: fix page bootstrap file
c42a2ec fix: fix hierarchy tools for valid model
cd32246 fix: hierarchy fix
fd44c98 fix: properties accessibility on SelfHierarchyTrait & add child methods
7198a9f fix: remove duplicated properties in Page entity
6649e2e feat: normalize group_actions and item_actions for list-type actions
f1562d1 feat: allow list-type actions only using action suffix
08dcff5 feat: fix type guessers and permit to guess "collection" type entry sub-form-field
3a6d82d feat: add listing hook
2f780a1 Merge branch '3.1' into feature/3.1-evols
15ace9c fix: sitemap section disabling && by-content disable was not working properly
aefa06a fix: add protected PA property
a8b788b feat: add logic tester and form field "if" to dynamically add/remove fields in forms
678f6ad fix: remove dump
a748871 feat: auto-add breadcrumbs fields in admin if content supports it
9d0fe94 fix: extract verifier to dedicated verifier service
f7f3e89 fix: prevent multi extension files & path incompatibility with UploadedFile class
af31d87 fix: fix upload vulnerability
ecc0ea2 feat: breadcrumbs, use chain routing in breadcrumbs
fbea8ed feat: breadcrumbs, add type checking on fragments
dfb9757 fix: fix breadcrumbs generation when no main content is provided
01c8008 Merge branch '3.0' into feature/3.1-breadcrumbs
539d730 fix: fix auto-router cache key generation, back to type:id:splid key, alternatives were either slow or incomplete
435d493 feature: add breadcrumbs internal handling
c9911ea fix: add documentation link in readme
b553c64 Merge remote-tracking branch 'origin/feature/3.0-fixes' into feature/3.0-fixes
c096361 Merge branch '3.0' into feature/3.0-fixes
3b0e9ed fix: fix auto-router cache key generation to handle sub-objects params (in the context of mutated object url generation)
98ab4d0 fix: fix auto-router property path when site is translated
171cafd fix: fix autorouter cache key generation to allow multiple urls when mutating subject content
b36463d Merge branch '3.0' into bugfix/redirections-imports
ceafd22 fix: missing entity manager in controller
c386922 fix: twig block fix after template refacto
8221aa2 refacto: MenuItem nullable
ab317ba refacto: remove useless param
15075c3 refacto: Site nullable
2c3dced refacto: Log nullable
5643786 refacto: Locale nullable
f7dd4ee refacto: nullable variables
32bb23c refacto: use IdTrait and fix nullable on $templatedAt
23707e4 refacto: CookieConsent nullable
970b1cb refacto: remove useless nullable in AdministratorModel
625354d refacto: use IdTrait in Administrator
ed59c2a chore: build assets
409e4a8 fix: auto scrollTo sidebar
4147550 refacto: git scripts doc
f826f73 refacto: git scripts
6a65303 fix: router autofill parameter bad property replacing
82aafa5 fix: remove locale parameter if site is not multilingual
f625557 fix: fix auto* methods in content repository
06c1aa2 fix: add auto router reference-keeping to improve perf on redundant contents
e1e3acc refacto: disabling sitemap from config
cccc9be feat: properly handle canonical overrides in sitemaps
a574ca7 fix: Log entity mapping
748fb8e fix: error on entity deletion if FK constraint fail (depending on db name)
b1fca07 fix: Logtail output format
30f0a24 fix: Logtail new usage
71fe753 fix: return '#null' if null path in webpFilter
89a69ec refacto: remove robots.txt locale if single lang
a74507c refacto: yaml indentation
37d3d6a fix: typo
65fe0f3 refacto: protected method EntityPrevNextHelper
def16c3 fix: get parent required on FileType and force required false on ImageType already saved
e3cdf39 fix: gitignore
d154ab8 fix: typo
61370f0 fix: init duplicator service
58abf5b refacto: nullable properties for avoid migrations errors
6b49e13 fix: select dropdown brick
9565be6 feat: use $qbOptions in EntityFinder
874692b feat: add $qbOptions on EntityFilterModel
a88ce48 fix: generate image webp in cache
5d70978 fix: add locale parameter if site is multilingual
9b56d22 fix: fix sitemap generation command
c41c16d fix: 404 on /media/ site matching
56678f2 fix: generate sitemap urls using content "chain_action" config (usually for category url levels)
198a6a9 fix: disable site matching for public dir /media/*
9d295d2 fix: get host without port
99f8b19 fix: no alternate lang if no multilingual
1881a6f chore: build assets
877b63d feat: add bootstrap Tab plugin
a0446d3 chore: build assets
0ea253b refacto: remove useless line
83f8d7c fix: add assets
c721176 refacto: re-format files
bd8eccb fix: add missing method in repo
9018f4a refacto: logger service with interface
a47bfe7 Merge branch '3.0' into feature/loggable
18ef847 fix: use property accessor for exporting
ed5f14c fix: add sitemap safe url generation parameter
11ff922 fix: refactor missing translation creation to ContentFactory service
2a4b5a5 refacto: auto router simplify
47ff309 fix: correct slug generation when none is given too
e011316 fix: contents config, force slug as key to avoid duplicates (from automatic array key generation in cfg)
1c3f02a chore: build assets
e9c5387 refacto: remove all log JS useless
a2a7db7 fix: menu item bug, apply content translation creation to root element (hidden) if missing
b58cabc fix: fix menu item root requesting
38e950a fix: move menuitem root request after item resolving (and translations creating)
d415a1c fix: sitemap generation ram decrease
a8f16b4 fix: create default translation on menuitem when editing for first time in new locale
63fc9f0 fix: default brick collection now no longer delete contents when removed from collection setting + brick configurator helper methods to normalize form handling + add brickBuilder error handling when corrupted settings + add "no sorting" parameter on RichSelect + RichEntityType
779a230 refacto: use new method from Symfony but dosen't work to
d6f3927 feat: add OpenGraph, Schema.org override & library file/image handling (with linking system) + serialization groups for aa models + various refactor
1e95d1b fix: homepage
15b6342 refacto: isLoggable move in service
ff5f0ed feat: new command for clear log
8667a35 refacto: limit repo
c549b0b fix: content reference in menu
5faadf4 fix: search filter entity admin
1dda198 Merge remote-tracking branch 'origin/3.0' into 3.0
b09726e fix: convert to json with keeping the unicode
9e54d05 fix: set type EntitySetting auto on form type entityType
a8f4f2f fix: types
6b1b124 fix: add doctrine array to json regex for parsing migration-generated sql for converting values
1720bb9 Merge branch '3.0' into feature/mf-3.0.x
932b179 fix: remove cache warmer for now
36642ab feat: remove useless image package in dockerfile
f007bca Revert "feat: check if domain is multilinguage"
99ceded feat: check if domain is multilinguage
b24381e fix: handle SeoMetadata bypass in sitemap generator
4fd2c4b fix: fix prev/next feature in admin
0f27fd4 fix: only use contentQb if repository is AbstractContentRepo
3213592 fix: add version tag listing script
e2b9162 Merge branch '3.0' into feature/mf-3.0.x
c415ea1 fix: remove hardcoded fr locale
d90876c fix: use content config + new sitemap config to auto-retrieve sitemap structure and links + add repository "auto" repo find methods to retrieve content following Publishable / PublishTimePeriod interfaces
39b82a1 fix: fix error when running entity listing js on non-listing pages
51f667f Merge branch '3.0' into feature/mf-3.0.x
0fd17f4 fix: rework SiteContext to fix context loading bugs + fix sitemap (render, cache, command)
034281b fix: permit to generate index actions without retrieving entity
a77c495 fix: fix content router param checking
5db87d6 fix: remove duplicate function for slugAdmin content retrieving + add associated doc
0db3139 fix: alternate generation when route is localized
9740a76 Merge branch '3.0' into feature/mf-3.0.x
5dcc21f fix: fix alternate generation when using multilang
8530dec fix: simplify chain action method + type action as string
813ae5b feat: remove useless Extension files
472265d fix: fix AA listing pagination + boostrap plugin naming
de85472 fix: remove slugger service alias
2d1d320 feat: remove cocur/slugify dep + adapt slugger to symfony ascii slugger
9206596 fix: fix DI for locale extension
98fefd8 feat: dissociate frontend locale switcher from backend one
52f6805 feat: add slugAdmin content resolving from twig 'aa_content_path' func
7339906 fix: fix DI in content controllers
d1373c2 feat: add tag move process
8135faa fix: fix template path
b1139f8 feat: fix backend entity layout + remove jquery in most admin areas + fix back to list link + normalize locale switcher in admin + normalize file naming in assets + extract inline styles into proper rules + rework sidebar + update docker
2c2d945 feat: fix brick build DI & constructor
0ea3827 feat: add brick resolver command to find parent content