diff --git a/.github/workflows/Check_Broken_VIs.yml b/.github/workflows/Check_Broken_VIs.yml deleted file mode 100644 index 1382fbd..0000000 --- a/.github/workflows/Check_Broken_VIs.yml +++ /dev/null @@ -1,63 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Check_Broken_VIs - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the main branch - pull_request: - branches: - - main - types: [closed] - paths-ignore: - - '**.md' - - '**.txt' - - '**.drawio' - - '**.vipb' - - '**.png' - - '**.svg' - - '**.json' - - '**.yml' - - push: - paths-ignore: - - '**.md' - - '**.txt' - - '**.drawio' - - '**.vipb' - - '**.png' - - '**.svg' - - '**.json' - - '**.yml' - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - Check_Broken_VIs: - # The type of runner that the job will run on - runs-on: [self-hosted, lv2017] - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 - - #不再依赖 Epoch Date & Time 包 - - - uses: NEVSTOP-LAB/InstallNevstopPackage@main - with: - LabVIEW_Version: 2017 - NEVSTOP-FTP-IP: ${{ secrets.VIPM_FTP_IP }} - NEVSTOP-FTP-PORT: ${{ secrets.VIPM_FTP_PORT }} - PackageName: Communicable-State-Machine - - # Runs a set of commands using the runners shell - - id: Check_Broken_VIs - uses: LV-APT/lvCICD@main - with: - LabVIEW_Version: 2017 - Operation: VIAn_CheckBrokenVIs - Parameter1: ${{ github.workspace }} - Parameter2: NOPASSWORD - Parameter3: YES - Parameter4: -placeContent diff --git a/.github/workflows/Run Testcases.yml b/.github/workflows/Run Testcases.yml deleted file mode 100644 index 5caae17..0000000 --- a/.github/workflows/Run Testcases.yml +++ /dev/null @@ -1,51 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Run Testcases - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the main branch - pull_request: - branches: - - main - types: [closed] - paths-ignore: - - '**.md' - - '**.txt' - - '**.drawio' - - '**.vipb' - - '**.png' - - '**.svg' - - '**.json' - - '**.yml' - - push: - paths-ignore: - - '**.md' - - '**.txt' - - '**.drawio' - - '**.vipb' - - '**.png' - - '**.svg' - - '**.json' - - '**.yml' - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - Run-Testcases: - # The type of runner that the job will run on - runs-on: [self-hosted, lv2017] - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 - - - name: Run lvCICD Test cases with VITester - id: StartVITester - uses: NEVSTOP-LAB/lvCICD@main - with: - LabVIEW_Version: 2017 - Operation: StartVITester - Parameter1: ${{ github.workspace }}\CSM API String Arguments Support.lvproj diff --git a/.github/workflows/Build_VIPM_Library.yml b/.github/workflows/labview-ci.yml similarity index 59% rename from .github/workflows/Build_VIPM_Library.yml rename to .github/workflows/labview-ci.yml index 8578626..e0137dc 100644 --- a/.github/workflows/Build_VIPM_Library.yml +++ b/.github/workflows/labview-ci.yml @@ -1,6 +1,21 @@ -# This is a basic workflow to help you get started with Actions +# Merged LabVIEW CI workflow +# Combines the previous three workflows into one pipeline with the order: +# Check_Broken_VIs -> Build_VIPM_Library -> Run_Testcases +# +# Trigger paths-ignore note: +# Original workflows had slightly different ignore lists +# (Build_VIPM_Library did not ignore '**.vipb'; +# Check_Broken_VIs / Run Testcases ignored '**.vipb'). +# To keep this merged workflow triggering whenever ANY original workflow +# would have triggered, only the intersection of the ignore lists is used. -name: Build_VIPM_Library +name: LabVIEW CI + +# 同一分支/标签的多次触发只保留最新一次运行:新 push 自动取消进行中的上一次运行, +# 避免多次提交在自托管 runner 上重复构建、排队积压(与 usermanual-ci.yml 同款配置) +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true # Controls when the workflow will run on: @@ -31,16 +46,14 @@ on: # Allows you to run this workflow manually from the Actions tab workflow_dispatch: -# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - # This workflow contains a single job called "build" - Build_VIPM_Library: + # Single job: all steps run sequentially on the SAME (self-hosted) machine. + labview_ci: # The type of runner that the job will run on runs-on: [self-hosted, lv2017] # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Get env variables # https://github.com/marketplace/actions/github-environment-variables-action - uses: FranzDiebold/github-env-vars-action@v2 @@ -48,8 +61,6 @@ jobs: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - #不再依赖 Epoch Date & Time 包 - - uses: NEVSTOP-LAB/InstallNevstopPackage@main with: LabVIEW_Version: 2017 @@ -57,7 +68,18 @@ jobs: NEVSTOP-FTP-PORT: ${{ secrets.VIPM_FTP_PORT }} PackageName: Communicable-State-Machine - # Runs a set of commands using the runners shell + # --- Step 1: Check for broken VIs --- + - id: Check_Broken_VIs + uses: LV-APT/lvCICD@main + with: + LabVIEW_Version: 2017 + Operation: VIAn_CheckBrokenVIs + Parameter1: ${{ github.workspace }} + Parameter2: NOPASSWORD + Parameter3: YES + Parameter4: -placeContent + + # --- Step 2: Build the VIPM library --- - name: BuildDailyVIP id: build-vip uses: NEVSTOP-LAB/vipm-BuildViPackage@main @@ -88,3 +110,11 @@ jobs: server_dir: /${{ env.CI_REPOSITORY_OWNER_SLUG }}/${{ env.CI_REPOSITORY_NAME }}/${{ env.CI_ACTION_REF_NAME }}/ local_dir: ./vip/ + # --- Step 3: Run test cases --- + - name: Run lvCICD Test cases with VITester + id: StartVITester + uses: NEVSTOP-LAB/lvCICD@main + with: + LabVIEW_Version: 2017 + Operation: StartVITester + Parameter1: ${{ github.workspace }}\CSM API String Arguments Support.lvproj diff --git a/CSM API String Arguments Support.vipb b/CSM API String Arguments Support.vipb index 843082f..cc79d8f 100644 --- a/CSM API String Arguments Support.vipb +++ b/CSM API String Arguments Support.vipb @@ -1,7 +1,7 @@ - + NEVSTOP_lib_CSM_API_String_Arguments_Support - 2026.1.1.1 + 2026.7.0.1 false . vip @@ -14,10 +14,12 @@ CSM API String Arguments Support true LabVIEW + false + - nevstop_lib_communicable_state_machine >=2025.9.13.224959 + nevstop_lib_communicable_state_machine >=2026.8.17.155753 nevstop_lib_jki_state_machine++ >=2023.8.5.2239 @@ -52,9 +54,8 @@ More information for the supported datatype format, please visit: https://github NEVSTOP https://github.com/NEVSTOP-LAB/CSM-API-String-Arugments-Support - [update] #109 disable <safestr> for string datatype -[fix] #105 Correct parsing and formatting of numeric values with "B" (byte) suffix, e.g. "100B" -[fix] #107 fix potential bug in "Strip Trailing Zeros for Float String.vi" + [update] #113 Enhance path support for linux, backslash & Slash could be used both be used for separator. +[fix] #111 When setting parameters, if the parameter is not found, the entire shift register content should not be replaced with the default value. diff --git a/Template/CSM Module Template(+Configuration).vi b/Template/CSM Module Template(+Configuration).vi index e9f6ed5..f2a373b 100644 Binary files a/Template/CSM Module Template(+Configuration).vi and b/Template/CSM Module Template(+Configuration).vi differ diff --git a/addons/API-String-Arugments-Support/Convert API String Arguments to Data.vim b/addons/API-String-Arugments-Support/Convert API String Arguments to Data.vim index 90287f9..ae60b99 100644 Binary files a/addons/API-String-Arugments-Support/Convert API String Arguments to Data.vim and b/addons/API-String-Arugments-Support/Convert API String Arguments to Data.vim differ diff --git a/addons/API-String-Arugments-Support/_Support/Convert API String Arguments to Data(variant).vi b/addons/API-String-Arugments-Support/_Support/Convert API String Arguments to Data(variant).vi index ddbd7c4..3a97a65 100644 Binary files a/addons/API-String-Arugments-Support/_Support/Convert API String Arguments to Data(variant).vi and b/addons/API-String-Arugments-Support/_Support/Convert API String Arguments to Data(variant).vi differ diff --git a/testcases/testcase-Supported-Datatype/setUp.vi b/testcases/testcase-Supported-Datatype/setUp.vi index eacf028..fbef20e 100644 Binary files a/testcases/testcase-Supported-Datatype/setUp.vi and b/testcases/testcase-Supported-Datatype/setUp.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcase-Supported-Datatype.lvclass b/testcases/testcase-Supported-Datatype/testcase-Supported-Datatype.lvclass index f3ea21c..3cdf70a 100644 --- a/testcases/testcase-Supported-Datatype/testcase-Supported-Datatype.lvclass +++ b/testcases/testcase-Supported-Datatype/testcase-Supported-Datatype.lvclass @@ -262,6 +262,15 @@ 1 1074278928 + + &Q#!!!!!!!)!"1!&!!!-!%!!!@````]!!!!"!!%!!!&!!!!!#1!-1#%'=X2B>(6T!!!,1!-!"'.P:'5!!""!-0````]'=W^V=G.F!!!71&!!!Q!!!!%!!AFF=H*P=C"P>81!"!!!!$R!=!!?!!!F)X2F=X2D98.F,6.V=("P=H2F:#V%982B>(FQ:3ZM>G.M98.T!!R5:8.U1W&T:3"P>81!!#"!5!!$!!!!!1!#%W6S=G^S)'FO)#BO<S"F=H*P=CE!/E"Q!"Y!!#5D>'6T>'.B=W5N5X6Q='^S>'6E,52B>'&U?8"F,GRW9WRB=X-!#V2F=X2$98.F)'FO!'%!]!!-!!-!"!!%!!5!"!!%!!1!"!!'!!1!"!!(!Q!!?!!!$1A!!!!!!!!!!!!!$1M!!!!!!!!!!!!!!!!!!!!!!!!+!!!!!!!!!!!!!!!3!!!.!!!!$!!!!!!!!!!!!!!"!!A!!!!! + -1 + 32 + true + 1 + 1 + 1074278928 + &Q#!!!!!!!)!"1!&!!!-!%!!!@````]!!!!"!!%!!!&#!!!!#1!-1#%'=X2B>(6T!!!,1!-!"'.P:'5!!""!-0````]'=W^V=G.F!!!71&!!!Q!!!!%!!AFF=H*P=C"P>81!"!!!!$R!=!!?!!!F)X2F=X2D98.F,6.V=("P=H2F:#V%982B>(FQ:3ZM>G.M98.T!!VS:7:F=G6O9W5A<X6U!#"!5!!$!!!!!1!#%W6S=G^S)'FO)#BO<S"F=H*P=CE!0%"Q!"Y!!#5D>'6T>'.B=W5N5X6Q='^S>'6E,52B>'&U?8"F,GRW9WRB=X-!$(*F:G6S:7ZD:3"J<A!!91$Q!!Q!!Q!%!!1!"1!%!!1!"!!%!!9!"!!%!!=$!!"Y!!!.#!!!!!!!!!!!!!!.#Q!!!!!!!!!!!!!!!!!!!!!!!!I!!!!!!!!!!!!!!")!!!U!!!!-!!!!!!!!!!!!!!%!#!!!!!! diff --git a/testcases/testcase-Supported-Datatype/testcases/test - #104.vi b/testcases/testcase-Supported-Datatype/testcases/test - #104.vi index ff50244..7902683 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - #104.vi and b/testcases/testcase-Supported-Datatype/testcases/test - #104.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - #111.vi b/testcases/testcase-Supported-Datatype/testcases/test - #111.vi new file mode 100644 index 0000000..0d1293a Binary files /dev/null and b/testcases/testcase-Supported-Datatype/testcases/test - #111.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - #86.vi b/testcases/testcase-Supported-Datatype/testcases/test - #86.vi index 9311449..45f7029 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - #86.vi and b/testcases/testcase-Supported-Datatype/testcases/test - #86.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - #98.vi b/testcases/testcase-Supported-Datatype/testcases/test - #98.vi index 5e94f9a..5f5c3af 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - #98.vi and b/testcases/testcase-Supported-Datatype/testcases/test - #98.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Arguments or Respsone.vi b/testcases/testcase-Supported-Datatype/testcases/test - Arguments or Respsone.vi index 90c9d3c..97c8a8a 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Arguments or Respsone.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Arguments or Respsone.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed Value as Arguments.vi b/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed Value as Arguments.vi index 20b2daa..3c487cd 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed Value as Arguments.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed Value as Arguments.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed with Leaf Element Name.vi b/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed with Leaf Element Name.vi index c55d58d..4240a5e 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed with Leaf Element Name.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Cluster Changed with Leaf Element Name.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Cluster mixed with Array.vi b/testcases/testcase-Supported-Datatype/testcases/test - Cluster mixed with Array.vi index c1a7cfd..4806bfa 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Cluster mixed with Array.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Cluster mixed with Array.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Cluster2.vi b/testcases/testcase-Supported-Datatype/testcases/test - Cluster2.vi index 2fdf3d3..127146c 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Cluster2.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Cluster2.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Complex.vi b/testcases/testcase-Supported-Datatype/testcases/test - Complex.vi index 636ae56..36ff44e 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Complex.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Complex.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - Refnum.vi b/testcases/testcase-Supported-Datatype/testcases/test - Refnum.vi index 0656b07..69e5b26 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - Refnum.vi and b/testcases/testcase-Supported-Datatype/testcases/test - Refnum.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - String with Keywords.vi b/testcases/testcase-Supported-Datatype/testcases/test - String with Keywords.vi index 3dd893f..45b25c6 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - String with Keywords.vi and b/testcases/testcase-Supported-Datatype/testcases/test - String with Keywords.vi differ diff --git a/testcases/testcase-Supported-Datatype/testcases/test - float.vi b/testcases/testcase-Supported-Datatype/testcases/test - float.vi index 6ac9d52..82f12b5 100644 Binary files a/testcases/testcase-Supported-Datatype/testcases/test - float.vi and b/testcases/testcase-Supported-Datatype/testcases/test - float.vi differ