diff --git a/.github/workflows/index-recipes.yml b/.github/workflows/index-recipes.yml
index 66a872aa7..bad75609d 100644
--- a/.github/workflows/index-recipes.yml
+++ b/.github/workflows/index-recipes.yml
@@ -17,9 +17,9 @@ jobs:
uses: actions/checkout@v4
- name: Set up Node.js
- uses: actions/setup-node@v2
+ uses: actions/setup-node@v4
with:
- node-version: '14'
+ node-version: '24'
- name: Install dependencies
run: |
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index a72179c55..dadefba82 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -11,8 +11,8 @@ jobs:
- name: 🥝 Use Node.js
uses: actions/setup-node@v4
with:
- node-version: '12.x'
- - run: npm install -g markdownlint-cli@0.23.2
+ node-version: '24'
+ - run: npm install -g markdownlint-cli@0.44.0
- run: markdownlint '**/*.md' --ignore node_modules
misspell:
name: 🧹 Check Spelling
diff --git a/.markdownlint.yml b/.markdownlint.yml
index 1685a2491..bffc5819a 100644
--- a/.markdownlint.yml
+++ b/.markdownlint.yml
@@ -47,6 +47,9 @@ MD025: false
# MD026 - Trailing punctuation in heading
MD026: false
+# MD027 - Multiple spaces after blockquote symbol
+MD027: false
+
# MD028 - Blank line inside blockquote
MD028: false
@@ -59,6 +62,9 @@ MD030: false
# MD033 - Inline HTML
MD033: false
+# MD034 - Bare URL used
+MD034: false
+
# MD036 - Emphasis used instead of a heading
MD036: false
@@ -71,8 +77,17 @@ MD040: false
# MD041 - First line in file should be a top level heading
MD041: false
+# MD045 - Images should have alternate text
+MD045: false
+
# MD046 - Code block style
MD046: false
# MD047 - Files should end with a single newline character
MD047: false
+
+# MD055 - Table pipe style
+MD055: false
+
+# MD056 - Table column count
+MD056: false
diff --git a/docs/04.guides/06.extensions/08.extension-extension-provider/page.md b/docs/04.guides/06.extensions/08.extension-extension-provider/page.md
index d499de7a2..0c550d07c 100644
--- a/docs/04.guides/06.extensions/08.extension-extension-provider/page.md
+++ b/docs/04.guides/06.extensions/08.extension-extension-provider/page.md
@@ -27,6 +27,7 @@ description | Description of the extension provider
image | Link to an image
url | URL for more information
mode | Defines how the Information of the ExtensionProvider is cached in the client (Lucee Administrator). Valid values are:
+
- develop - does not cache the result of the extension provider
- production (or no value) - caches the result in the session scope of the consumer
diff --git a/docs/04.guides/13.Various/24.rest-services/page.md b/docs/04.guides/13.Various/24.rest-services/page.md
index 61189026f..0842bcec5 100644
--- a/docs/04.guides/13.Various/24.rest-services/page.md
+++ b/docs/04.guides/13.Various/24.rest-services/page.md
@@ -45,7 +45,7 @@ In Lucee you have two main options to add a REST service to your Application:
* **Physical:** *C:\path-to-location-with-your-rest-components\\* and click on **save**
* **Step 3:** OPTIONAL: To make sure the REST services are correctly set up, activate the check box for **List services**. When enabled, you'll see a list of all the REST service mappings by navigating to `http://localhost:8888/rest/` (this will list all REST mappings created for the localhost web-context).
-
+
#### Option 2: Setting up REST service by defining a REST mapping in Application.cfc ####
@@ -88,7 +88,7 @@ If you have enabled **List services** in the REST settings of your Lucee Server
* Verify if you're using the correct Lucee Administrator's password in the password-attribute of the [[function-restinitapplication]] function.
* Plain REST requests won't invoke the `Application.cfc`, thus no REST mapping will be added with the [[function-restinitapplication]] function with pure REST requests. Try running a `.cfm` template to invoke the `Application.cfc` then. If your application doesn't have a .cfm template, create an empty index.cfm and run it. This will ensure that the [[function-restinitapplication]] function in `Application.cfc` gets executed. It's also possible to create a special template (e.g. `initRest.cfm`) containing the [[function-restinitapplication]] function for the simple purpose of executing that function as an update of the REST mapping.
-
+
### 4. Creating the REST example application ###
@@ -168,7 +168,7 @@ To intercept requests for `rest/*` paths and direct them to Tomcat/Lucee, follow
* *Step 7:* Click on **Request Restrictions** and uncheck *invoke handler only if request is mapped to:*
* *Step 8:* Apply the changes by clicking **Ok**
-
+
#### For Apache2 on Ubuntu/Linux ####
@@ -228,7 +228,7 @@ Find below a quick reference overview of specific component attributes and funct
* **rest (boolean):** enables/disables the component as an accessible rest component. Default value is `true`. Set it to false if you wish to disable a component from serving REST services.
* **restpath (string):** defines the path that invokes the component. Use this to define your own REST path in case you don't want to use the components name.
* **httpMethod (string):** defines the http method to access the component. All values that are supported and allowed by the server can be used. Common values are `GET | POST | PUT | UPDATE | DELETE | HEAD | OPTIONS`
-
+
#### 7.2 CFfunction attributes for REST ####
@@ -238,14 +238,14 @@ Find below a quick reference overview of specific component attributes and funct
* **httpMethod (string)** defines the http method to access the function. All values that are supported and allowed by the server can be used. Common values are `GET | POST | PUT | UPDATE | DELETE | HEAD | OPTIONS`
* **produces (string):** defines the content-type of the server response, e.g. `text/plain | text/html | application/json | application/xml` or other valid mime-types. Default is `application/json`.
* **consumes (string):** defines the content-type of the expected request body from the client.
-
+
#### 7.3 CFargument ####
* **restArgName (string):** Defines the variable name of the request data.
* **restArgSource (string):** Defines the data scope for the variable name to be extracted. Possible values are `PATH | QUERY | FORM | MATRI | HEADER | COOKIE`
-
+
### 8. Using file extensions to format return data ###
diff --git a/docs/05.categories/048.compat/category.md b/docs/05.categories/048.compat/category.md
index 8eed2b4e9..68943f9f7 100644
--- a/docs/05.categories/048.compat/category.md
+++ b/docs/05.categories/048.compat/category.md
@@ -16,4 +16,3 @@ Whilst Lucee is broadly compatible with Adobe ColdFusion, there are some differe
Some are for performance reasons, others due to Adobe mis-adopting or adding features which conflict with Lucee additions to the language. Sometimes it's a trade off between being compatible and respecting our existing users.
Our issue tracker has an [acf-compat](https://luceeserver.atlassian.net/issues/?jql=labels%20%3D%20%22acf-compat%22) label which tracks all the known differences.
-
diff --git a/docs/recipes/breaking-changes-6-0.md b/docs/recipes/breaking-changes-6-0.md
index 5cb992a4e..2ecfb0c92 100644
--- a/docs/recipes/breaking-changes-6-0.md
+++ b/docs/recipes/breaking-changes-6-0.md
@@ -17,7 +17,7 @@ The decision to make breaking changes are not made lightly, generally speaking,
Please review all these changes when upgrading your applications to ensure they run smoothly and reliably.
-When migrating, the Lucee team highly recommends going straight to the latest 6.2 release, via a fresh install, working thru the breaking changes documents for each release, as listed and linked below.
+When migrating, the Lucee team highly recommends going straight to the latest 6.2 release, via a fresh install, working through the breaking changes documents for each release, as listed and linked below.
Users upgrading to Lucee 6.2, running on Tomcat 11 and Java 21, have reported really improved performance and vastly reduced memory usage, so enjoy!