diff --git a/docs/00.home/homepage.md b/docs/00.home/homepage.md index 95451f59c..ee4998c6b 100644 --- a/docs/00.home/homepage.md +++ b/docs/00.home/homepage.md @@ -18,13 +18,13 @@ To find out more about getting involved as a developer with Lucee, checkout our ## Lucee 6.1 -Lucee 6.1 is the next major release, currently at the final Release Candidate stage. +Lucee 6.1 is current stable release of Lucee. -Targeting better performance and reduced memory usuage, Lucee 6.1 now has full support for Java 11 thru 21. +Targeting better performance and reduced memory usuage, Lucee 6.1 has full support for Java 11 and 21. ## Lucee 6.0 -[Lucee 6](https://dev.lucee.org/tag/lucee-6) is current stable release of Lucee. +[Lucee 6](https://dev.lucee.org/tag/lucee-6) . Highlights include, reduced size, faster startup, single context mode, JSON based configuration and much more. @@ -34,7 +34,7 @@ As a Major Release, Lucee 6 does include some potential **BREAKING CHANGES**, fo Lucee 5.4 is our [LTS stable release](https://lucee.org/downloads.html) and is recommended for production systems. More details are available in the [Lucee 5](/guides/lucee-5.html) section of these docs. -Lucee 5.4 will receive security updates and critcal regression fixes until 2026, but is no longer actively maintained. +As a LTS release, Lucee 5.4 will receive security updates and critical regression fixes until 2026, **but is no longer actively maintained.** ## Getting help diff --git a/docs/04.guides/01.getting-started/03.system-requirements/page.md b/docs/04.guides/01.getting-started/03.system-requirements/page.md index b054a5508..e8652bb1b 100644 --- a/docs/04.guides/01.getting-started/03.system-requirements/page.md +++ b/docs/04.guides/01.getting-started/03.system-requirements/page.md @@ -11,11 +11,13 @@ Of course there are different recommendations that go with the different operati ### Java Versions ### -Lucee 5.3 and 5.4 support Java 8 and 11 +Lucee 5.4 (LTS) supports Java 8 and 11 -Lucee 6 will support Java 11 on release, with Java 8 unofficially supported as long as practical +Lucee 6 supports Java 11, with Java 8 unofficially supported as long as practical -Full Java 17 support is planned for a later 6 point release, it currently mostly works, see +Lucee 6.1 supports Java 11 and Java 21 (recommended) + +Lucee 6.2 will support both the Javax and Jakarta Namespaces, thus supporting Tomcat 10 etc If you do run into problems running on **newer versions** of Java with Lucee 6, please report any problems to the developer forum [Lucee Dev](https://dev.lucee.org) diff --git a/docs/04.guides/05.working-with-source/01.build-from-source/page.md b/docs/04.guides/05.working-with-source/01.build-from-source/page.md index 7560e4938..dd627b20b 100644 --- a/docs/04.guides/05.working-with-source/01.build-from-source/page.md +++ b/docs/04.guides/05.working-with-source/01.build-from-source/page.md @@ -12,13 +12,16 @@ See [[building-testing-extensions]] for instructions regarding Extensions ### 1. Before you get started +Lucee 5.4 is in LTS mode, any new submissions should target the 6.2 branch + Before you can start building Lucee from source, you will need a few things installed on your machine: 1. **Java JDK** - since you're going to compile Java code you need the JDK and not just the JRE. -- Lucee requires JDK 8 or later in order to compile. [Oracle](https://www.oracle.com/technetwork/java/javase/downloads/) or [AdoptOpenJDK](https://adoptopenjdk.net/) -- Java 11 is *recommended*, Java 15 is *not yet supported* due the removal of the Nashorn JavaScript engine which is used in the build process -- Java 17 *isn't yet fully supported* due to some Apache Felix issues (fixed in 5.3.9, but some extensions need updating) +- Lucee requires JDK 11 or later in order to compile. [Oracle](https://www.oracle.com/technetwork/java/javase/downloads/) or [AdoptOpenJDK](https://adoptopenjdk.net/) +- Java 8 still works, but is no longer officially supported as of Lucee 6.0 +- Java 11 is supported +- Java 21 is fully supported since 6.1 1. **Apache Maven** - the source code contains several build scripts that will automate the build process for you. You will need Maven installed in order to run these build scripts. @@ -28,11 +31,25 @@ Before you can start building Lucee from source, you will need a few things inst Lucee's source code is version-controlled with Git, [Lucee GitHub repository](https://github.com/lucee/lucee). -The repository contains a few branches, with the most important ones being "Master" (current release) and "Develop" (alpha and beta releases), currently the main branch for development is the *6.0 branch*, so best start there. +The repository contains a few branches, with the most important ones being "Master" (current release) and "Develop" (alpha and beta releases), currently the main branch for development is the *6.1 branch*, so best start there. + +So fork the Lucee repo and then checkout your forked repo locally + +**Important** + +Recently (July 2024) we experienced a problem with Docker pull limits being hit, causing our CI (Github Actions) to fail + +Docker kindly sponsored Lucee with an open source license, so we are now using authenticated Docker pulls, +however, this causes a problem on CI for PRs and forks, as the Github Action will fail without Docker Creds (secrets) + +To solve this, you'll need a Docker hub account and add the following secrets to your forked repo + +- DOCKERHUB_PUBLIC_USERNAME +- DOCKERHUB_PUBLIC_TOKEN -So simply clone the 6.0 branch (or fork your own copy) from the git repository to your local drive with the following command: +(it's named "PUBLIC" as this token under the Lucee Org only has rights to pull public images) - git clone -b 6.0 https://github.com/lucee/Lucee.git +See for details. ### 3. Build it diff --git a/docs/04.guides/13.Various/01.system-properties/page.md b/docs/04.guides/13.Various/01.system-properties/page.md index 2e6834bcb..c4efb4b97 100644 --- a/docs/04.guides/13.Various/01.system-properties/page.md +++ b/docs/04.guides/13.Various/01.system-properties/page.md @@ -254,17 +254,13 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_EXTENSIONS_INSTALL
lucee.extensions.install
-

Enables/disables installation of Lucee's default extensions. When this value is changed, it will need a complete redeployment of "lucee-server" (simple restart won't suffice).

-

This directive is very useful in combination with the system variable LUCEE_EXTENSIONS.

- Values: Boolean true | false
Default: true @@ -276,22 +272,17 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_EXTENSIONS
lucee.extensions

Comma separated list of extension GUIDs (Globally Unique Identifiers) to be downloaded and installed during the very first server start.

-

Setting GUID alone will install latest version.

-

If you want to dictate version, append ;version=xx.xx.xx.xx to the GUID.

-

You can find available extensions and their corresponding GUID (these are listed as IDs) in the Server Administrator or at Lucee Downloads.

- - Values: String + Values: String

Example: Installing JFreeChart Extension Version 1.0.19.19:

LUCEE_EXTENSIONS=D46B46A9-A0E3-44E1-D972A04AC3A8DC10;version=1.0.19.19
@@ -304,7 +295,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_ENABLE_BUNDLE_DOWNLOAD
lucee.enable.bundle.download
@@ -323,7 +313,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_TEMPLATE_CHARSET
lucee.template.charset
@@ -348,7 +337,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_WEB_CHARSET
lucee.web.charset
@@ -371,7 +359,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_RESOURCE_CHARSET
lucee.resource.charset
@@ -394,7 +381,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_SCRIPT_PROTECT
lucee.script.protect
@@ -421,7 +407,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_QUEUE_ENABLE
lucee.queue.enable
@@ -442,7 +427,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_QUEUE_MAX
lucee.queue.max
@@ -464,7 +448,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_QUEUE_TIMEOUT
lucee.queue.timeout
@@ -487,14 +470,12 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_CFML_WRITER
lucee.cfml.writer
Defines whitespace management of the server.
-
  • regular: No whitespace management.
  • white-space: Simple whitespace management - @@ -502,10 +483,9 @@ Also, make sure not to publish these files with sensitive data as part of open s
  • white-space-pref: Smart whitespace management - every whitespace character that follows a whitespace is removed, but whitespace inside the tags: <code>, <pre> and <textarea> is kept
- - Values: String white-space-pref | regular | white-space -
- Default: regular + Values: String white-space-pref | regular | white-space +
+ Default: regular

Example: The following directive will set whitespace management to simple:

LUCEE_CFML_WRITER=white-space
@@ -520,16 +500,13 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_SUPPRESS_WS_BEFORE_ARG
lucee.suppress.ws.before.arg

If set, Lucee suppresses whitespace defined between the [[tag-function]] starting tag and the last [[tag-argument]] tag.

-

This setting is ignored when there is a different output between this tags as white space.

- Values: Boolean true | false
Default: true @@ -543,17 +520,13 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_PRESERVE_CASE
lucee.preserve.case
-

Keep all struct keys defined with "dot notation" in original case.

-

If set to false, all dot.notated key-names will be converted to UPPERCASE.

- Values: Boolean true | false
Default: false @@ -571,7 +544,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_ALLOW_COMPRESSION
lucee.allow.compression
@@ -595,7 +567,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_FULL_NULL_SUPPORT
lucee.full.null.support
@@ -618,7 +589,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_CASCADE_TO_RESULTSET
lucee.cascade.to.result
@@ -642,7 +612,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_TYPE_CHECKING
lucee.type.checking
@@ -664,7 +633,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_STATUS_CODE
lucee.status.code
@@ -685,7 +653,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -694,15 +661,11 @@ Also, make sure not to publish these files with sensitive data as part of open s LUCEE_S3_ACCESSKEYID
lucee.s3.accesskeyid
-

Defines the default S3 virtual S3 bucket mapping credentials.

-

Use this to hide AWS S3 credentials from source code or Web Administrator.

-

That way you connect to your S3 bucket with a S3:///myAwsBucketname/someDirectory/ S3:///myAwsKey:myAwsSecretKey@/myAwsBucketname/someDirectory/. Please see [[category-s3]]

- Values: String

Lucee Server Administrator: not available @@ -714,7 +677,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -723,9 +685,7 @@ Also, make sure not to publish these files with sensitive data as part of open s

Defines a comma separated list of file extensions that are not allowed to be uploaded.

-

By default Lucee will block a set of files that have potential risk. Use this setting to have more control over Lucees default settings.

- Values: String
Default: asp,aspx,cfc,cfm,cfml,do,htm,html,jsp,jspx,php @@ -744,7 +704,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -762,7 +721,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -771,11 +729,8 @@ Also, make sure not to publish these files with sensitive data as part of open s

Defines the directory location where Lucee should create the server context.

-

By default Lucee places its server context in the servlet engines directory.

-

Use this to move the server context outside the Lucee installation dir. This directive is the same as the init param lucee-server-directory of path-to-lucee-installation\tomcat\conf\web.xml

- Values: String

Example: Moving web contexts to another location: @@ -789,7 +744,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -798,15 +752,10 @@ Also, make sure not to publish these files with sensitive data as part of open s Defines the directory location where Lucee should create the web contexts. -

By default Lucee places its web-context configuration and data files in a folder named WEB-INF under the webroot of each website.

-

Use this to move the web context outside of the websites webroot.

-

This directive is the same as the init param lucee-web-directory of path-to-lucee-installation\tomcat\conf\web.xml.

-

When using this directive you'll need to add Lucees label variable {web-context-label} to the path that will be used as the identifier hash or label for the created web contexts.

- Values: String

Example: Moving web contexts to another location: @@ -820,7 +769,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -833,8 +781,6 @@ Also, make sure not to publish these files with sensitive data as part of open s Values: String
Default: false - -

Lucee Server Administrator: not available

@@ -843,7 +789,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -856,7 +801,6 @@ Also, make sure not to publish these files with sensitive data as part of open s Values: String error | warning |info | debug
Default: error -

Lucee Server Administrator: not available

@@ -867,7 +811,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -876,9 +819,7 @@ Also, make sure not to publish these files with sensitive data as part of open s Disables the controller. Default is false. -

The Controller is an internal background process which runs maintenance tasks.

- On Startup
  • Syncing NTP time
  • @@ -886,7 +827,6 @@ Also, make sure not to publish these files with sensitive data as part of open s
  • Clearing out cache files
  • Clearing out expired scopes like sessions (in persistent storage)
- Every Minute
  • Automatically deploying updates / extensions [[deploying-lucee-server-apps]] @@ -898,19 +838,15 @@ Also, make sure not to publish these files with sensitive data as part of open s
  • Clearing out locks
  • Picking up changed configuration files
- Every Hour
  • Syncing NTP time
  • Clearing out temp files
  • Clearing out cache files
- Values: Boolean true | false
Default: false - -

Lucee Server Administrator: not available

@@ -919,7 +855,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
@@ -928,9 +863,7 @@ Also, make sure not to publish these files with sensitive data as part of open s

Number of milliseconds between controller calls.

-

Set to 0 to disable controller. Useful for benchmark testing.

- Values: Numeric

Lucee Server Administrator: not available @@ -940,7 +873,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

-
LUCEE_LISTENER_TYPE
lucee.listener.type
@@ -953,7 +885,6 @@ Also, make sure not to publish these files with sensitive data as part of open s
  • modern: Modern handling. Lucee only looks for the file Application.cfc
  • mixed: Mixed handling. Lucee looks for a file Application.cfm / OnRequestEnd.cfm as well as for the file Application.cfc
  • - Values: String none | classic | modern | mixed
    Default: mixed @@ -967,14 +898,12 @@ Also, make sure not to publish these files with sensitive data as part of open s

    -
    LUCEE_LISTENER_MODE
    lucee.listener.mode

    Defines where Lucee looks for the files Application.cfc / Application.cfm.

    -

    Note: In case of having LUCEE_LISTENER_TYPE set to none the setting for LUCEE_LISTENER_MODE is ignored.

    • curr2root: Looks for the file Application.cfc / Application.cfm from the current up to the webroot directory.
    • @@ -982,7 +911,6 @@ Also, make sure not to publish these files with sensitive data as part of open s
    • root: Looks for the file Application.cfc / Application.cfm only in the webroot .
    • curr: Looks for the file Application.cfc / Application.cfm only in the current template directory.
    - Values: String curr2root | currOrRoot | root | curr
    Default: curr2root @@ -996,20 +924,17 @@ Also, make sure not to publish these files with sensitive data as part of open s

    -
    LUCEE_QOQ_HSQLDB_DISABLE
    lucee.qoq.hsqldb.disable
    Throw exception if native QoQ logic fails, otherwise Lucee falls back to using HSQLDB (which is needed for joins etc), Default is false.
    - [[http://wwvv.codersrevolution.com/blog/improving-lucees-query-of-query-support]]
    Values: Boolean true | false
    Default: false -

    Lucee Server Administrator: not available

    @@ -1018,14 +943,12 @@ Also, make sure not to publish these files with sensitive data as part of open s

    -
    LUCEE_QOQ_HSQLDB_DEBUG
    lucee.qoq.hsqldb.debug

    Log message to WEB context's datasource log any time a QoQ "falls back" to HyperSQL.

    -

    This could include just bad SQL syntax. Default is false.

    Values: Boolean true|false
    @@ -1044,14 +967,11 @@ Also, make sure not to publish these files with sensitive data as part of open s

    Changes Lucee default behaviour of using existing physical paths over virtually mapped paths with the same mapped name (conflicting situation).

    -

    Set this value to true to change Lucees default behaviour and force Lucee to use mappings as first priority and silently ignore conflicting physical paths.

    - Example:
    // Assumption:
    // "D:/myimages/abc" is a physical valid location

    // Defined mappings
    mappings[ '/' ] = 'D:/';
    mappings[ '/myimages' ] = 'D:/images';

    // Default Lucee:
    // the following writeDump outputs "D:/myimages/abc"
    writeDump( expandPath( '/myimages/abc' );

    // If LUCEE_MAPPING_FIRST=true:
    // the following writeDump outputs "D:/images/abc"
    writeDump( expandPath( '/myimages/abc' );

    - Values: Boolean true|false
    Default: false @@ -1069,7 +989,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

    Enables logging on reflection calls.

    - Values: Boolean true|false
    Default: false @@ -1089,7 +1008,6 @@ Also, make sure not to publish these files with sensitive data as part of open s

    Enables warming up a Lucee instance.

    When enabled, Lucee will startup, deploy itself, creating the required directories, deploying any configured extensions and then exiting.

    It enables a faster startup for the deployment of Docker images, Kubernetes clusters and blue/green environments for example.

    - Values: Boolean true|false
    Default: false @@ -1101,16 +1019,14 @@ Also, make sure not to publish these files with sensitive data as part of open s

    - +
    LUCEE_USE_LUCEE_SSL_TRUSTSTORE
    lucee.use.lucee.SSL.TrustStore

    Enables the certificate authority truststore in Lucee location, instead by the JVM default truststore location.

    Previous to Lucee 6.0 Lucee served its own SSL truststore. From 6.0 the truststore is set by the JVM default truststore location.

    -

    Enabling this setting will tell Lucee to use its own truststore, behaving as prior to Lucee 6.0.

    - - +

    Enabling this setting will tell Lucee to use its own truststore, behaving as prior to Lucee 6.0.

    Values: Boolean true|false
    Default: false @@ -1121,8 +1037,7 @@ Also, make sure not to publish these files with sensitive data as part of open s Application.cfc: not available

    - - +
    diff --git a/docs/recipes/index.json b/docs/recipes/index.json index edc2ab982..a00fa8073 100644 --- a/docs/recipes/index.json +++ b/docs/recipes/index.json @@ -192,7 +192,7 @@ "file": "environment-variables-system-properties.md", "title": "Environment Variables / System Properties for Lucee", "path": "/docs/recipes/environment-variables-system-properties.md", - "hash": "eca24437e534f809870da00652ddbba3", + "hash": "cb3c97b26bb0ffabe7900252d76ec28b", "keywords": [ "Environment", "Environment Variables",