From 7da11aba3b95b8dfcb61c010539461a2f0f4e911 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 16 Jul 2025 04:24:46 +0000 Subject: [PATCH 1/7] Update dependency maven to v3.9.11 --- .mvn/wrapper/maven-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties index 3112b8e..6a6b8b2 100644 --- a/.mvn/wrapper/maven-wrapper.properties +++ b/.mvn/wrapper/maven-wrapper.properties @@ -14,4 +14,4 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.10/apache-maven-3.9.10-bin.zip +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip From a65a863f2006483444c099b91a54a73d865c5a8b Mon Sep 17 00:00:00 2001 From: AB Date: Wed, 16 Jul 2025 09:38:29 +0200 Subject: [PATCH 2/7] Remove Sonar https://github.com/xdev-software/github/issues/34 --- .github/workflows/sonar.yml | 79 ------------------------------------- README.md | 1 - 2 files changed, 80 deletions(-) delete mode 100644 .github/workflows/sonar.yml diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml deleted file mode 100644 index df6dbb7..0000000 --- a/.github/workflows/sonar.yml +++ /dev/null @@ -1,79 +0,0 @@ -name: Sonar - -on: - workflow_dispatch: - push: - branches: [ develop ] - paths-ignore: - - '**.md' - - '.config/**' - - '.github/**' - - '.idea/**' - - 'assets/**' - pull_request: - branches: [ develop ] - paths-ignore: - - '**.md' - - '.config/**' - - '.github/**' - - '.idea/**' - - 'assets/**' - -env: - SONARCLOUD_ORG: ${{ github.event.organization.login }} - SONARCLOUD_HOST: https://sonarcloud.io - -jobs: - token-check: - runs-on: ubuntu-latest - if: ${{ !(github.event_name == 'pull_request' && startsWith(github.head_ref, 'renovate/')) }} - timeout-minutes: 5 - outputs: - hasToken: ${{ steps.check-token.outputs.has }} - steps: - - id: check-token - run: | - [ -z $SONAR_TOKEN ] && echo "has=false" || echo "has=true" >> "$GITHUB_OUTPUT" - env: - SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - - sonar-scan: - runs-on: ubuntu-latest - needs: token-check - if: ${{ needs.token-check.outputs.hasToken }} - timeout-minutes: 30 - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis - - - name: Set up JDK - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: 17 - - - name: Cache SonarCloud packages - uses: actions/cache@v4 - with: - path: ~/.sonar/cache - key: ${{ runner.os }}-sonar - restore-keys: ${{ runner.os }}-sonar - - - name: Cache Maven packages - uses: actions/cache@v4 - with: - path: ~/.m2 - key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} - restore-keys: ${{ runner.os }}-m2 - - - name: Build with Maven - run: | - ./mvnw -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar \ - -DskipTests \ - -Dsonar.projectKey=${{ env.SONARCLOUD_ORG }}_${{ github.event.repository.name }} \ - -Dsonar.organization=${{ env.SONARCLOUD_ORG }} \ - -Dsonar.host.url=${{ env.SONARCLOUD_HOST }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any - SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} diff --git a/README.md b/README.md index eccf80b..3b97901 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ [![Latest version](https://img.shields.io/maven-central/v/software.xdev/template-placeholder?logo=apache%20maven)](https://mvnrepository.com/artifact/software.xdev/template-placeholder) [![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/template-placeholder/check-build.yml?branch=develop)](https://github.com/xdev-software/template-placeholder/actions/workflows/check-build.yml?query=branch%3Adevelop) -[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=xdev-software_template-placeholder&metric=alert_status)](https://sonarcloud.io/dashboard?id=xdev-software_template-placeholder) # template-placeholder From b5ca8b50fab4331c039bf2820803445e75932133 Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 17 Jul 2025 11:24:42 +0200 Subject: [PATCH 3/7] Publish to our GitHub Central "repo" https://github.com/xdev-software/standard-maven-template/issues/171 --- .github/workflows/release.yml | 10 ++++++---- .github/workflows/test-deploy.yml | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 210ef8c..2b905ac 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -121,15 +121,17 @@ jobs: with: # running setup-java overwrites the settings.xml distribution: 'temurin' java-version: '17' + server-id: github-central + server-password: PACKAGES_CENTRAL_TOKEN gpg-passphrase: MAVEN_GPG_PASSPHRASE gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} # Only import once - - name: Publish to Central Portal - run: ../mvnw -B deploy -P publish -DskipTests -DaltDeploymentRepository=github::https://maven.pkg.github.com/${{ github.repository }} + - name: Publish to GitHub Packages Central + run: ../mvnw -B deploy -P publish -DskipTests -DaltDeploymentRepository=github-central::https://maven.pkg.github.com/xdev-software/central + working-directory: ${{ env.PRIMARY_MAVEN_MODULE }} env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + PACKAGES_CENTRAL_TOKEN: ${{ secrets.PACKAGES_CENTRAL_TOKEN }} MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} - working-directory: ${{ env.PRIMARY_MAVEN_MODULE }} - name: Set up JDK uses: actions/setup-java@v4 diff --git a/.github/workflows/test-deploy.yml b/.github/workflows/test-deploy.yml index 922eda0..ae28e35 100644 --- a/.github/workflows/test-deploy.yml +++ b/.github/workflows/test-deploy.yml @@ -21,14 +21,16 @@ jobs: with: # running setup-java overwrites the settings.xml distribution: 'temurin' java-version: '17' + server-id: github-central + server-password: PACKAGES_CENTRAL_TOKEN gpg-passphrase: MAVEN_GPG_PASSPHRASE gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} # Only import once - - name: Publish to GitHub Packages - run: ../mvnw -B deploy -P publish -DskipTests -DaltDeploymentRepository=github::https://maven.pkg.github.com/${{ github.repository }} + - name: Publish to GitHub Packages Central + run: ../mvnw -B deploy -P publish -DskipTests -DaltDeploymentRepository=github-central::https://maven.pkg.github.com/xdev-software/central working-directory: ${{ env.PRIMARY_MAVEN_MODULE }} env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + PACKAGES_CENTRAL_TOKEN: ${{ secrets.PACKAGES_CENTRAL_TOKEN }} MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} - name: Set up JDK From 02651ce38abf0596c1f786190e1120de62b404ca Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 17 Jul 2025 11:36:33 +0200 Subject: [PATCH 4/7] Remove not needed permissions --- .github/workflows/release.yml | 3 --- .github/workflows/test-deploy.yml | 3 --- 2 files changed, 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2b905ac..5f8fb83 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -104,9 +104,6 @@ jobs: runs-on: ubuntu-latest needs: [prepare-release] timeout-minutes: 60 - permissions: - contents: read - packages: write steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/test-deploy.yml b/.github/workflows/test-deploy.yml index ae28e35..046be63 100644 --- a/.github/workflows/test-deploy.yml +++ b/.github/workflows/test-deploy.yml @@ -10,9 +10,6 @@ jobs: publish-maven: runs-on: ubuntu-latest timeout-minutes: 60 - permissions: - contents: read - packages: write steps: - uses: actions/checkout@v4 From d6280496478c83214cd695e09aa916b39bf7e873 Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 17 Jul 2025 13:53:02 +0200 Subject: [PATCH 5/7] Fix link checker not creating issues Due to hidden change of how exit code is handled in https://github.com/lycheeverse/lychee-action/releases/tag/v2.0.0 Don't write 3 sentences about what has changed in the context of X; simply write: * Replace ``env.lychee_exit_code`` with ``steps.lychee.outputs.exit_code`` like you somehow did on the Readme? --- .github/workflows/broken-links.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index 0d8c960..e97096a 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -30,13 +30,13 @@ jobs: GH_TOKEN: ${{ github.token }} - name: Close issue if everything is fine - if: env.lychee_exit_code == 0 && steps.find-issue.outputs.number != '' + if: steps.lychee.outputs.exit_code == 0 == 0 && steps.find-issue.outputs.number != '' run: gh issue close -r 'not planned' ${{ steps.find-issue.outputs.number }} env: GH_TOKEN: ${{ github.token }} - name: Create Issue From File - if: env.lychee_exit_code != 0 + if: steps.lychee.outputs.exit_code == 0 != 0 uses: peter-evans/create-issue-from-file@e8ef132d6df98ed982188e460ebb3b5d4ef3a9cd # v5 with: issue-number: ${{ steps.find-issue.outputs.number }} From 45e3f514b2141396212ad5cbc8399ed8258eaecd Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 17 Jul 2025 13:57:22 +0200 Subject: [PATCH 6/7] Fix typo --- .github/workflows/broken-links.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index e97096a..1d9d96b 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -30,13 +30,13 @@ jobs: GH_TOKEN: ${{ github.token }} - name: Close issue if everything is fine - if: steps.lychee.outputs.exit_code == 0 == 0 && steps.find-issue.outputs.number != '' + if: steps.lychee.outputs.exit_code == 0 && steps.find-issue.outputs.number != '' run: gh issue close -r 'not planned' ${{ steps.find-issue.outputs.number }} env: GH_TOKEN: ${{ github.token }} - name: Create Issue From File - if: steps.lychee.outputs.exit_code == 0 != 0 + if: steps.lychee.outputs.exit_code != 0 uses: peter-evans/create-issue-from-file@e8ef132d6df98ed982188e460ebb3b5d4ef3a9cd # v5 with: issue-number: ${{ steps.find-issue.outputs.number }} From e410f903efa6bc605fa769a41a266e959a50de9b Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 18 Jul 2025 10:46:43 +0200 Subject: [PATCH 7/7] ``ImprovedWebElement#hasAttribute`` now waits for loading operations to complete (now calls ``prepareForOperation`` as ``getProperty`` already does) --- CHANGELOG.md | 3 +++ .../software/xdev/selenium/elements/ImprovedWebElement.java | 1 + 2 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cff82d2..dea1571 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +# 1.0.4 +* ``ImprovedWebElement#hasAttribute`` now waits for loading operations to complete (now calls ``prepareForOperation`` as ``getProperty`` already does) + # 1.0.3 * Removed reflection calls in ``CustomizableJsonToWebElementConverter`` as https://github.com/SeleniumHQ/selenium/issues/15884 was fixed #11 * Selenium version 4.34+ is required diff --git a/selenium-elements/src/main/java/software/xdev/selenium/elements/ImprovedWebElement.java b/selenium-elements/src/main/java/software/xdev/selenium/elements/ImprovedWebElement.java index 7839a95..896c004 100644 --- a/selenium-elements/src/main/java/software/xdev/selenium/elements/ImprovedWebElement.java +++ b/selenium-elements/src/main/java/software/xdev/selenium/elements/ImprovedWebElement.java @@ -109,6 +109,7 @@ default void dispatchCustomEvent( default boolean hasAttribute(final String attribute) { + this.prepareForOperation(); return (boolean)this.callFunction("hasAttribute", attribute); }