- contexts (E.g.
${{ github.run_id }}
) - context availability
- expressions (E.g.
${{ hashFiles('**/pom.xml') }}
) - file patterns (E.g.
**/*
) - hosted runners label (E.g.
windows-latest
) - hosted runners environment
- computed matrix
package com.acme; | |
import java.io.IOException; | |
import java.io.UncheckedIOException; | |
import java.nio.ByteBuffer; | |
import java.nio.channels.ByteChannel; | |
import java.nio.file.Files; | |
import java.nio.file.Path; | |
import java.nio.file.StandardOpenOption; | |
import java.util.ArrayList; |
// see https://confluence.jetbrains.com/display/GRVY/Scripting+IDE+for+DSL+awareness | |
import com.intellij.lang.jvm.types.JvmReferenceType | |
import com.intellij.psi.PsiClass | |
import com.intellij.psi.PsiClassObjectAccessExpression | |
import com.intellij.psi.PsiElement | |
import com.intellij.psi.PsiElementVisitor | |
import com.intellij.psi.PsiMethod | |
import com.intellij.psi.PsiParameter | |
import com.intellij.psi.PsiQualifiedNamedElement |
package io.helidon.build.archetype.dsl | |
interface ArchetypeScript { | |
/** | |
* Declares an archetype script. | |
* @param body archetype body closure | |
*/ | |
void archetype(@DelegatesTo(Archetype) Closure body) |
The guide has been made after the sketchs and only document them. It does not provide any actual guide-lines for building other pages.
The style guide is not adaptable to our framework (vuetify) as-is, thus we need to tune both the framework and the guide.
Hard CSS tuning might result in broken components.
int DOWNSTREAM_INIT = Integer.MIN_VALUE >>> 1
int UPSTREAM_INIT = Integer.MIN_VALUE >>> 2
int SUBSCRIPTION_LOCK = Integer.MIN_VALUE >>> 3
AtomicInteger contenders = new AtomicInteger(Integer.MIN_VALUE)
private boolean halfInit(int mask) {
int c = contenders.getAndUpdate(v -> v < 0 ? v | mask : v);
return c < 0 && (c & mask) == 0;
The stager Maven plugin allows to stage a directory.
This is somehow similar to the maven-assembly-plugin
but more compact and specific to our needs.
<!-- Maven properties used below -->
<properties>
<site.output.dir>${project.build.directory}/site</site.output.dir>
<cname>helidon.io</cname>
Separate modules to be forked by the cli to handle things that are too expensive to be bundled with native-image (e.g. "https").
It shall be invoked with java -jar
and not require classpath, either self-contained code or a standalone JAR (e.g. shaded).
The JAR file is embedded as a resource in the native CLI binary.
NOTE: Proxy has to be propagated to the forked JVM properly.