Skip to content

Releases: in2code-de/in2publish_core

7.0.1 Fixed some small bugs

12 Apr 09:30
Compare
Choose a tag to compare

The configuration is now merged more decently and optional configuration nodes are now handled more appropriately.

7.0.0 Config Rework and a looooot of changes

27 Mar 21:56
7.0.0
60bef33
Compare
Choose a tag to compare

🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉

ConfigContainer

The configuration hasn't been touched for years [sic!] but the time has come to update this rusty part of the Content Publisher.

The new ConfigContainer now fulfills three different purposes:

  • Collecting all configuration definitions from any features
  • Merging different configuration sources
  • Providing a well formatted and complete configuration

This makes different parts of configuration related stuff obsolete like the previous definition which was laid down by an array with undocumented syntax and tests for single configuration values.

The new config definition is built in an object oriented manner and is represented by nodes. There are several node types, some define a specific configuration key, others define a variable amount of keys, but they all restrict the key and the value to a certain data type. Additionally each leave Node defines a default configuration value (non-leave-nodes may also define default values) and can have additional validators assigned. The configuration definition can filter, validate, unset all default values and cast them to the expected types.

Registered config providers return configurations from different locations like a config file, versioned config file, UserTS, PageTS and others.

The new structure makes in2publish_core a lot more extensible and configurable and reduces the number of hacks required to integrate expansions into this.

Config Changes (a.k.a Upgrading)

Following configurations have been moved from the YAML-config to the in2publish_core extension configuration (in the extension manager)

  • logLevel: This value should always be available because a non-accessible configuration should be logged, eh?
  • disableUserConfig: Rewriting the UserTS configuration reader to a UserTsProvider required this configuration value to be set as early as possible
  • adapter.remote & adapter.transmission: The registration of ConfigDefiner and the early access to the foreign database forced me to move these values to the extConf, but this makes everything more stable.

Please set these values in the extension manager after upgrading and remove them from your YAML file.
Also remove any default value from the YAML file, because defaults are always included.
You only need to define configuration values which differ from the default (like foreign.database.name)

Changeeeees

  • Cleanup: Thousands of lines have been removed from the core. Either because they were old or replaced by better versions or defaults
  • Feature split: Any additional feature which is not required for in2publish_core to run was moved to a feature folder.
    Log Reader: The internal log reader was dropped. You can still read and also search and filter logs in the publish tools module by installing vertexvaar/logs. The "show logs" tool with automatically show up again after activation of EXT:logs (you can disable the logs backend module in the extension configuration of EXT:logs).
  • Bugfixes:
    • Fire & Forget: The JavaScript has gotten old but and was therefor rewritten as require module. The notification API has been generalized and simplified. Also AjaxRoutes are used and there will no request to the backend before or after publishing. (No unnecessary ones).
    • Simple Overview And Ajax: Buried under a pile of other changes this feature was nearly forgotten and almost removed but i brought this back to life just right before the dawn.
  • Linting: JSCS and JSHint were replaced with ESLint
  • A lot more. Please have a look at the changelog 😉

6.2.2 Major FlexForm support increase (EXT:dce support)

05 Mar 15:34
6.2.2
266dc5a
Compare
Choose a tag to compare

FlexForms have been handled with caution and reluctant ever since.
There was no need because the core simply did not use TCA type flex with FlexForms containing inline or input fields. So there was no need to resolve these and also no example code to test eventual implementations.
As a matter of fact DCE does use these options because any unmapped relation is save in FlexForms. We decided to support DCE as a result of fully support any Core-given relation option and therefor implemented these missing relation resolving mechanism.

6.2.1 Massive clean up and flex relation fix

16 Feb 13:28
6.2.1
3f4959c
Compare
Choose a tag to compare

This Release contains less than ever before. Instead of adding new code about 4k lines of code have been deleted.
Other stuff which has been done:

  • Rewrite the BackendModule JS to a require module
  • Ignore failing (event listener) slots after a record has been finished
  • Improve log processing (adding info about the BE User)

6.2.0 Allow direct sys_file_reference relation

16 Feb 13:21
6.2.0
9dacb3b
Compare
Choose a tag to compare

This release adds a new option to the factory configuration set which allows resolving relations to file references directly from the page over the UID. Please read the comment in the example configuration before enabling this one.

6.1.0 Signal -1+1, clean ups and fixes

06 Feb 16:25
6.1.0
813560e
Compare
Choose a tag to compare

The last release was ~3 weeks ago and it has become quite silent around the content publisher. One of the reasons is the focused development of the enterprise version and its new feature "Content Language Control".
But enough said about the Enterprise Version, let's talk about changes.

Features:

  • A new Signal has been introduced which will allow you to add your own custom resolved relations.
  • You can enhance the log reading function in the tools module simply by installing vertexvaar/logs. in2publish_core will automatically use that extension's API and better Template.

Deprecation:

  • The internal log reading function has been deprecated and will be fully removed upon the next major release.

Bugfixes:

  • Removed duplicate voting signal for publishing permission checks
  • Made the voting results readable for the internal log reader
  • Check all resolved records before adding them to the parent record and log trouble makers

Other:

  • Removed CommonRepository::getPropertiesForIdentifier as it was nearly a duplicate (and that class is waaaay too big)
  • Added the section about retrieving the foreign key fingerprint (which was linked but the target was removed)

6.0.4 decouple js controls and fix IndexingFRF

11 Jan 17:10
6.0.4
c5920a8
Compare
Choose a tag to compare

In the JavaScript any publishing button was required to also have an overlay configured. The overlay is now optional to the confirmation popup.
Also a tiny bug related to moved records with related images was fixed.

6.0.3 Fix RCE table:backup and log data

14 Dec 14:25
4128d7a
Compare
Choose a tag to compare

This small release patches following small, very small... i mean tiny, tiny bugs:

  • log messages will now be readable in the publish tools log module concerning:
    • general RCE calls of the debug log level
    • error and output of failed remote TableCommandController calls
  • Removed argument format from table:backup command identifier (table:publish did not work because of this)

Also i added a Codacy Badge which implies that this extension has class A code quality 😄
Additionally this extension will be properly symlinked to typo3conf/ext when running composer install in the package root (for tests).
Last but not least: Overall.js was dropped completely because all functions were finally migrated where they belong. To in2publish, the enterprise version.

6.0.2 Drop ghost records

04 Dec 13:40
ea78f6e
Compare
Choose a tag to compare

Ghost records are Record instances which do not represent an existing database row.
These ghosts may occur if you have 1:n or n:m relations whereas the targeted records has been removed.
This could also be described as an edge case with orphaned relations.

You should update, especially if you are using EXT:news and "related news"

6.0.1 Command prefixes, config path and array initialization fix

27 Nov 10:30
f207943
Compare
Choose a tag to compare

This small release fixes some minor issues.
You are not affected if you don't:

  • have command names intersecting with commands provided by in2publish_core
  • use another adapter than the predefined SSH adapters
  • register an other communication adapter before in2publish_core was loaded.

There are no changes in the configuration or API.