Skip to content

[pull] master from axelor:master #27

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 334 commits into from
May 21, 2022
Merged

[pull] master from axelor:master #27

merged 334 commits into from
May 21, 2022

Conversation

pull[bot]
Copy link

@pull pull bot commented May 21, 2022

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

pbe-axelor added 30 commits May 20, 2022 15:19
Hibernate Validator requires an implementation of Jakarta Expression
Language for evaluating dynamic expressions in constraint violation
messages. See custom I18nInterpolator.

Related to https://docs.jboss.org/hibernate/validator/6.2/reference/en-US/html_single/#validator-gettingstarted-uel

Signed-off-by: Pierre Belloy <[email protected]>
java.lang.NoSuchMethodError: `java.util.stream.Stream
javax.persistence.TypedQuery.getResultStream()` sometimes happens
because of duplicate TypedQuery in classpath.

Besides, `hibernate-jpa-api` is deprecated, and
`javax.persistence:javax.persistence-api:2.2` should be used instead.

Signed-off-by: Pierre Belloy <[email protected]>
`javax.persistence.sharedCache.mode` property in `application.properties`
 can be used to overwrite the `shared-cache-mode` from `persistence.xml`.
 It allow to enable/disable the shared cache mode (ie second-level cache).

Signed-off-by: Pierre Belloy <[email protected]>
JpaRepository#findByIds(List<Long>) method find multiple
entities by their primary key.

Ensure to check the first-level cache first then the second-level cache
and, if the entity is found and already managed by the Hibernate
Session, the cached entity will be added to the returned List,
therefore skipping it from being fetched via the multi-load query.

Signed-off-by: Pierre Belloy <[email protected]>
This add support new `SCRAM-SHA-256` password encryption method which
is now the default password encryption method is PostgreSQL 14.

Signed-off-by: Pierre Belloy <[email protected]>
Also remove unnecessary `tika-parsers` dependencies. As we're simply
detecting document types, etc..., only `tika-core` is required.

Signed-off-by: Pierre Belloy <[email protected]>
Always use Tika to determine file content type. Use a shared Detector
instance to detect mime type, rather than creating a Tika object. This
avoids loading unnecessary things. All build-in Tika detectors are
thread-safe, so it is ok to share the detector globally.

Signed-off-by: Pierre Belloy <[email protected]>
This fix file type detection when `Files.probeContentType` can't
determine the file content type : the default implementations are OS
specific and might fail depending on the OS.

Signed-off-by: Pierre Belloy <[email protected]>
Also improve `unaccent` filter.

Addresses RM-42256

Signed-off-by: Pierre Belloy <[email protected]>
Due to dropping support of removable module, the way it resolves module
dependency wasn't adapted. It was done during Guice initialization.

Signed-off-by: Pierre Belloy <[email protected]>
Use https://github.com/ben-manes/gradle-versions-plugin plugin.
`./gradlew dependencyUpdates` displays a report of the project
dependencies that are up-to-date, exceed the latest version found,
have upgrades, or failed to be resolved.

Rules :

 - Prefer guava's jre artifacts (reject -android versions) :
 See https://github.com/google/guava#adding-guava-to-your-build

- for dependencies using stable versions : reject unstable newer
versions and always report newer stable version.

- for dependencies using unstable versions : accept newer unstable
versions if it’s the same base version (i.e. 1.0.0-alpha1 ->
1.0.0-alpha2). Otherwise prefer newer stable and reject newer unstable
with different base versions (like 1.1.0-alpha1)

`./gradlew dependencyUpdates` can also be used with two options :
- `-PonlyMinor` : list only minor updates
- `-PonlyPatch` : list only patch updates

Signed-off-by: Pierre Belloy <[email protected]>
The nashorn script engine is deprecated in JDK-11 and has some
incompatible changes than JDK-8.

The new implementation uses GraalJS which supports latest ECMAScript
features.

The collection helpers `listOf`, `setOf` and `mapOf` are removed as
corresponding native JavaScript objects are passed with appropriate
Java equivalent wrapper to the Java calls.

Fixes RM-25457

Signed-off-by: Pierre Belloy <[email protected]>
`WARNING: The polyglot context is using an implementation that does not
support runtime compilation` if running on GraalVM using the GraalVM
compiler.

See https://docs.oracle.com/en/graalvm/enterprise/22/docs/reference-manual/js/FAQ#warning-implementation-does-not-support-runtime-compilation

Signed-off-by: Pierre Belloy <[email protected]>
Running parallel Junit tests may generate unexpected result : Each
tests will target the same database.

Signed-off-by: Pierre Belloy <[email protected]>
When Junit tests ends the connection aren't resealed. After many tests
is can excesses the max number of connections (too many clients)

Signed-off-by: Pierre Belloy <[email protected]>
Allow defining destination path when extracting. Use in Junit tests
to avoid creating output under src folder.

Signed-off-by: Pierre Belloy <[email protected]>
When running multiple Junit tests at once, i18n bundle may have been
initialized in another Junit test. So new translations aren't in
bundle when running I18nTest Junit test.

Signed-off-by: Pierre Belloy <[email protected]>
`ChangelogTest` from axelor-gradle to axelor-tools
Move I18nExtractorTest to sub `i18n package`

Signed-off-by: Pierre Belloy <[email protected]>
Remove Junit4, only keep Junit5 for AOP JUnit tests

Signed-off-by: Pierre Belloy <[email protected]>
pbe-axelor and others added 28 commits May 20, 2022 15:20
Signed-off-by: Pierre Belloy <[email protected]>
Make input placeholders transparent to better distinguish them from
filled values.
- Channels support (multiplexing)
- Guice support
- Auth support

Channels can be added by implementing `com.axelor.web.socket.Channel`
class.

Resolves RM-40890
It's straight forward migration using polling only but over
websocket connection.
- refactor the client api
- properly handles http session timeout
- reconnect after http session is established again
Fixes unit test failure.
Menu tags polling has been moved to websocket.

Signed-off-by: Pierre Belloy <[email protected]>
Menu tags polling has been moved to websocket.

Signed-off-by: Pierre Belloy <[email protected]>
The web socket will be closed from `@OnClose` when the user session
ends (or timeout).

Signed-off-by: Pierre Belloy <[email protected]>
This plugin display better logs on console while running tests than
Gradle. It also supports colours and unicode symbols.
Configured to use by default `mocha` theme and define slow threshold
to 3s.

Signed-off-by: Pierre Belloy <[email protected]>
Signed-off-by: Pierre Belloy <[email protected]>
Signed-off-by: Pierre Belloy <[email protected]>
Signed-off-by: Pierre Belloy <[email protected]>
@pull pull bot added the ⤵️ pull label May 21, 2022
@pull pull bot merged commit c7aed53 into Monogramm:master May 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants