diff --git a/.github/workflows/build_test.yml b/.github/workflows/build_test.yml index 82f0f3fbee6d..7e0a875191a3 100644 --- a/.github/workflows/build_test.yml +++ b/.github/workflows/build_test.yml @@ -37,14 +37,18 @@ jobs: - name: install ndk run: yes | ${ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager --install "ndk;${{ env.ndk_version }}" - - name: conan remote - run: | - conan remote remove "*" - conan remote add odr https://artifactory.opendocument.app/artifactory/api/conan/conan - conan remote add conancenter https://center2.conan.io - name: conan profile run: conan profile detect + - name: checkout core + run: git submodule update --init --depth 1 OpenDocument.core + + - name: checkout conan-index + run: cd OpenDocument.core; git submodule update --init --depth 1 conan-odr-index + + - name: export conan-odr-index + run: python OpenDocument.core/conan-odr-index/scripts/conan_export_all_packages.py + - name: Gradle cache uses: gradle/actions/setup-gradle@v3 @@ -53,10 +57,6 @@ jobs: - name: conan cache size run: du -h -d1 ~/.conan2/p - - name: conan login - run: conan remote login odr admin --password '${{ secrets.ARTIFACTORY }}' - - name: conan upload - run: conan upload "*" --check --confirm --remote odr - name: Artifact APKs uses: actions/upload-artifact@v4 diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml deleted file mode 100644 index 04c49b363630..000000000000 --- a/.github/workflows/claude-code-review.yml +++ /dev/null @@ -1,77 +0,0 @@ -name: Claude Code Review - -on: - pull_request: - types: [opened, synchronize] - # Optional: Only run on specific file changes - # paths: - # - "src/**/*.ts" - # - "src/**/*.tsx" - # - "src/**/*.js" - # - "src/**/*.jsx" - -jobs: - claude-review: - # Optional: Filter by PR author - # if: | - # github.event.pull_request.user.login == 'external-contributor' || - # github.event.pull_request.user.login == 'new-developer' || - # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' - - runs-on: ubuntu-latest - permissions: - contents: read - pull-requests: read - issues: read - id-token: write - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 1 - - - name: Run Claude Code Review - id: claude-review - uses: anthropics/claude-code-action@beta - with: - claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} - - # Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4) - model: "claude-opus-4-20250514" - - # Direct prompt for automated review (no @claude mention needed) - direct_prompt: | - Please review this pull request and provide feedback on: - - Code quality and best practices - - Potential bugs or issues - - Performance considerations - - Security concerns - - Test coverage - - Be constructive and helpful in your feedback. - - use_sticky_comment: true - - # Optional: Customize review based on file types - # direct_prompt: | - # Review this PR focusing on: - # - For TypeScript files: Type safety and proper interface usage - # - For API endpoints: Security, input validation, and error handling - # - For React components: Performance, accessibility, and best practices - # - For tests: Coverage, edge cases, and test quality - - # Optional: Different prompts for different authors - # direct_prompt: | - # ${{ github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' && - # 'Welcome! Please review this PR from a first-time contributor. Be encouraging and provide detailed explanations for any suggestions.' || - # 'Please provide a thorough code review focusing on our coding standards and best practices.' }} - - # Optional: Add specific tools for running tests or linting - # allowed_tools: "Bash(npm run test),Bash(npm run lint),Bash(npm run typecheck)" - - # Optional: Skip review for certain conditions - # if: | - # !contains(github.event.pull_request.title, '[skip-review]') && - # !contains(github.event.pull_request.title, '[WIP]') - diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml deleted file mode 100644 index 3cec85c50f7e..000000000000 --- a/.github/workflows/claude.yml +++ /dev/null @@ -1,64 +0,0 @@ -name: Claude Code - -on: - issue_comment: - types: [created] - pull_request_review_comment: - types: [created] - issues: - types: [opened, assigned] - pull_request_review: - types: [submitted] - -jobs: - claude: - if: | - (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) || - (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) || - (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) || - (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude'))) - runs-on: ubuntu-latest - permissions: - contents: read - pull-requests: read - issues: read - id-token: write - actions: read # Required for Claude to read CI results on PRs - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 1 - - - name: Run Claude Code - id: claude - uses: anthropics/claude-code-action@beta - with: - claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} - - # This is an optional setting that allows Claude to read CI results on PRs - additional_permissions: | - actions: read - - # Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4) - model: "claude-opus-4-20250514" - - # Optional: Customize the trigger phrase (default: @claude) - # trigger_phrase: "/claude" - - # Optional: Trigger when specific user is assigned to an issue - # assignee_trigger: "claude-bot" - - # Optional: Allow Claude to run specific commands - # allowed_tools: "Bash(npm install),Bash(npm run build),Bash(npm run test:*),Bash(npm run lint:*)" - - # Optional: Add custom instructions for Claude to customize its behavior for your project - # custom_instructions: | - # Follow our coding standards - # Ensure all new code has tests - # Use TypeScript for new files - - # Optional: Custom environment variables for Claude - # claude_env: | - # NODE_ENV: test - diff --git a/.gitmodules b/.gitmodules index e69de29bb2d1..ac856351dc1e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "OpenDocument.core"] + path = OpenDocument.core + url = https://github.com/opendocument-app/OpenDocument.core diff --git a/OpenDocument.core b/OpenDocument.core new file mode 160000 index 000000000000..eb4ad4b4a534 --- /dev/null +++ b/OpenDocument.core @@ -0,0 +1 @@ +Subproject commit eb4ad4b4a534bcc506c339f0a1d0d4b014fcbd36 diff --git a/README.md b/README.md index 4856b2801073..98abe165e196 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,7 @@ Please help to translate on the https://crowdin.com/project/opendocument - install conan using pip in a venv - `conan profile detect --force` -- `conan remote add odr https://artifactory.opendocument.app/artifactory/api/conan/conan` -- move odr-repository to first index in .conan2/remotes.json - make sure `conan` is in your $PATH or replace conan-call in `app/build.gradle` +- `git submodule update --init --depth 1 OpenDocument.core` +- `cd OpenDocument.core; git submodule update --init --depth 1 conan-odr-index` +- `python OpenDocument.core/conan-odr-index/scripts/conan_export_all_packages.py` diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ea8b7fac3fad..34acd068b6aa 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,8 +2,8 @@