Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ URL_API=http://localhost:8000/api/
# React env variables need to be prefixed with "REACT_APP", otherwise the variables are ignored for
# security reasons.
REACT_APP_URL_SITE_BACKEND=http://localhost:8000/
REACT_APP_URL_API=http://localhost:8000/api/
REACT_APP_URL_ELASTICSEARCH=http://localhost:8000/es/
REACT_APP_URL_API=https://www.openml.org/api/
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't edit .env - we don't want to overwrite variables on the server. You can use .env.dev or create a new file.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Understood! I'll use the existing .env.dev for local development going forward. The new PR won't include any
.env changes - it will remain as the production configuration.

REACT_APP_URL_ELASTICSEARCH=https://www.openml.org/es/
REACT_APP_ELASTICSEARCH_VERSION_MAYOR=6
REACT_APP_URL_MINIO=http://localhost:8000/data/
REACT_APP_URL_MINIO=https://data.openml.org/
FLASK_APP=autoapp.py
FLASK_ENV=development
DATABASE_URI=sqlite:///openml.db
58 changes: 29 additions & 29 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ name: "CodeQL"

on:
push:
branches: [ master ]
branches: [master]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
branches: [master]
schedule:
- cron: '44 10 * * 6'
- cron: "44 10 * * 6"

jobs:
analyze:
Expand All @@ -32,40 +32,40 @@ jobs:
strategy:
fail-fast: false
matrix:
language: [ 'javascript', 'python' ]
language: ["javascript", "python"]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
# Learn more:
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed

steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Checkout repository
uses: actions/checkout@v2

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1

# ℹ️ Command-line programs to run using the OS shell.
# πŸ“š https://git.io/JvXDl
# ℹ️ Command-line programs to run using the OS shell.
# πŸ“š https://git.io/JvXDl

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language

#- run: |
# make bootstrap
# make release
#- run: |
# make bootstrap
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
4 changes: 1 addition & 3 deletions .github/workflows/release_docker.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,14 @@ on:
workflow_dispatch:
push:
tags:
- 'v*'
- "v*"

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:

docker:

runs-on: ubuntu-latest

steps:
Expand Down
10 changes: 2 additions & 8 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,12 @@ before_script:
- CHROMEDRIVER_VERSION=`curl -s "https://chromedriver.storage.googleapis.com/LATEST_RELEASE_$CHROME_MAIN_VERSION"`
- curl "https://chromedriver.storage.googleapis.com/${CHROMEDRIVER_VERSION}/chromedriver_linux64.zip" -O
- unzip chromedriver_linux64.zip -d ~/bin
# - ln --symbolic /usr/lib/chromium-browser/chromedriver "${HOME}/bin/chromedriver"
# - ls ${HOME}/bin/
# - ln --symbolic /usr/lib/chromium-browser/chromedriver "${HOME}/bin/chromedriver"
# - ls ${HOME}/bin/
- flask run & # Run in background, to run pytest next

script:
- flake8 --max-line-length 120
- pytest server/src/dashboard/tests --headless

#after_script: pkill -9 -f "autoapp.py"






149 changes: 74 additions & 75 deletions PULL_REQUEST.md
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't add readmes for a PR. Just add this information in the PR description on GitHub

Original file line number Diff line number Diff line change
Expand Up @@ -19,36 +19,36 @@ Migrated all entity detail pages to use descriptive, SEO-optimized URLs:

**Benefits:**

- Better Google indexing and SEO ranking
- More intuitive, user-friendly URLs
- Improved sharing and citation experience
- Professional URL structure for academic references
- Better Google indexing and SEO ranking
- More intuitive, user-friendly URLs
- Improved sharing and citation experience
- Professional URL structure for academic referencesx
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added typo :)


### 2. **Backward Compatibility Redirects** πŸ”„

Old URLs automatically redirect to new canonical URLs to maintain compatibility with:

- Academic papers and citations
- Bookmarks and saved links
- External references
- Academic papers and citations
- Bookmarks and saved links
- External references

**Implementation:**

- `/d/[dataId].js` β†’ Redirects to `/datasets/[id]`
- `/t/[taskId].js` β†’ Redirects to `/tasks/[id]`
- `/f/[flowId].js` β†’ Redirects to `/flows/[id]`
- `/r/[runId].js` β†’ Redirects to `/runs/[id]`
- `/d/[dataId].js` β†’ Redirects to `/datasets/[id]`
- `/t/[taskId].js` β†’ Redirects to `/tasks/[id]`
- `/f/[flowId].js` β†’ Redirects to `/flows/[id]`
- `/r/[runId].js` β†’ Redirects to `/runs/[id]`

### 3. **Fixed Search Result Navigation** πŸ”

Search results now correctly navigate to the new SEO-friendly URLs:

**Files Modified:**

- `app/src/components/search/ResultCard.js`
- Added entity type detection via `_meta.rawHit._type`
- Added ID field mapping for each entity type
- Implemented URL generation based on entity type
- `app/src/components/search/ResultCard.js`
- Added entity type detection via `_meta.rawHit._type`
- Added ID field mapping for each entity type
- Implemented URL generation based on entity type

**Logic:**

Expand All @@ -72,112 +72,111 @@ Enhanced `OpenMLSearchConnector.js` to properly handle entity types:

**Changes:**

- Added `_meta.rawHit._type` field with index name
- Ensures entity type is correctly passed to search results
- Enables proper routing based on entity type
- Added `_meta.rawHit._type` field with index name
- Ensures entity type is correctly passed to search results
- Enables proper routing based on entity type

### 5. **Search Configuration Updates** βš™οΈ

Updated search configs to include necessary ID fields:

**Files Modified:**

- `app/src/search_configs/runConfig.js` - Added `run_id` to result_fields
- `app/src/search_configs/runConfig.js` - Added `run_id` to result_fields

### 6. **Component Fixes** πŸ›

Fixed display issues in search result cards:

**Files Modified:**

- `app/src/components/search/taskCard.js`
- `app/src/components/search/taskCard.js`
- Fixed Title to use `tasktype.name` and `source_data.name`
- Was incorrectly using run fields

- Fixed Title to use `tasktype.name` and `source_data.name`
- Was incorrectly using run fields

- `app/src/components/search/flowCard.js`
- Fixed Title to use `name` field
- Was incorrectly using run fields
- `app/src/components/search/flowCard.js`
- Fixed Title to use `name` field
- Was incorrectly using run fields

### 7. **Detail Page Migrations** πŸ“„

Moved all entity detail pages to their new canonical locations:

**Datasets:**

- Content moved: `/d/[dataId].js` β†’ `/datasets/[id].js`
- Updated param name: `params.dataId` β†’ `params.id`
- Updated internal links to use new URLs
- Content moved: `/d/[dataId].js` β†’ `/datasets/[id].js`
- Updated param name: `params.dataId` β†’ `params.id`
- Updated internal links to use new URLs

**Tasks:**

- Content moved: `/t/[taskId].js` β†’ `/tasks/[id].js`
- Updated param name: `params.taskId` β†’ `params.id`
- Updated internal links: `/d/` β†’ `/datasets/`
- Content moved: `/t/[taskId].js` β†’ `/tasks/[id].js`
- Updated param name: `params.taskId` β†’ `params.id`
- Updated internal links: `/d/` β†’ `/datasets/`

**Flows:**

- Content moved: `/f/[flowId].js` β†’ `/flows/[id].js`
- Updated param name: `params.flowId` β†’ `params.id`
- Content moved: `/f/[flowId].js` β†’ `/flows/[id].js`
- Updated param name: `params.flowId` β†’ `params.id`

**Runs:**

- Content moved: `/r/[runId].js` β†’ `/runs/[id].js`
- Updated param name: `params.runId` β†’ `params.id`
- Updated internal links: `/d/` β†’ `/datasets/`, `/t/` β†’ `/tasks/`, `/f/` β†’ `/flows/`
- Content moved: `/r/[runId].js` β†’ `/runs/[id].js`
- Updated param name: `params.runId` β†’ `params.id`
- Updated internal links: `/d/` β†’ `/datasets/`, `/t/` β†’ `/tasks/`, `/f/` β†’ `/flows/`

## Testing Checklist βœ…

- [x] Datasets search page displays correctly
- [x] Tasks search page displays correctly
- [x] Flows search page displays correctly
- [x] Runs search page displays correctly
- [x] Clicking dataset leads to `/datasets/:id`
- [x] Clicking task leads to `/tasks/:id`
- [x] Clicking flow leads to `/flows/:id`
- [x] Clicking run leads to `/runs/:id`
- [x] Old `/d/:id` URLs redirect to `/datasets/:id`
- [x] Old `/t/:id` URLs redirect to `/tasks/:id`
- [x] Old `/f/:id` URLs redirect to `/flows/:id`
- [x] Old `/r/:id` URLs redirect to `/runs/:id`
- [x] Detail pages load correctly with new URLs
- [x] Internal links use new URL structure
- [x] Datasets search page displays correctly
- [x] Tasks search page displays correctly
- [x] Flows search page displays correctly
- [x] Runs search page displays correctly
- [x] Clicking dataset leads to `/datasets/:id`
- [x] Clicking task leads to `/tasks/:id`
- [x] Clicking flow leads to `/flows/:id`
- [x] Clicking run leads to `/runs/:id`
- [x] Old `/d/:id` URLs redirect to `/datasets/:id`
- [x] Old `/t/:id` URLs redirect to `/tasks/:id`
- [x] Old `/f/:id` URLs redirect to `/flows/:id`
- [x] Old `/r/:id` URLs redirect to `/runs/:id`
- [x] Detail pages load correctly with new URLs
- [x] Internal links use new URL structure

## Files Changed

### New Files Created:

- `/app/src/pages/datasets/[id].js` - Dataset detail page (canonical)
- `/app/src/pages/tasks/[id].js` - Task detail page (canonical)
- `/app/src/pages/flows/[id].js` - Flow detail page (canonical)
- `/app/src/pages/runs/[id].js` - Run detail page (canonical)
- `/app/src/pages/datasets/[id].js` - Dataset detail page (canonical)
- `/app/src/pages/tasks/[id].js` - Task detail page (canonical)
- `/app/src/pages/flows/[id].js` - Flow detail page (canonical)
- `/app/src/pages/runs/[id].js` - Run detail page (canonical)

### Modified Files:

- `/app/src/pages/d/[dataId].js` - Now redirects to `/datasets/:id`
- `/app/src/pages/t/[taskId].js` - Now redirects to `/tasks/:id`
- `/app/src/pages/f/[flowId].js` - Now redirects to `/flows/:id`
- `/app/src/pages/r/[runId].js` - Now redirects to `/runs/:id`
- `/app/src/components/search/ResultCard.js` - Added entity-aware URL generation
- `/app/src/components/search/taskCard.js` - Fixed Title component
- `/app/src/components/search/flowCard.js` - Fixed Title component
- `/app/src/services/OpenMLSearchConnector.js` - Added entity type metadata
- `/app/src/search_configs/runConfig.js` - Added run_id field
- `/app/src/pages/d/[dataId].js` - Now redirects to `/datasets/:id`
- `/app/src/pages/t/[taskId].js` - Now redirects to `/tasks/:id`
- `/app/src/pages/f/[flowId].js` - Now redirects to `/flows/:id`
- `/app/src/pages/r/[runId].js` - Now redirects to `/runs/:id`
- `/app/src/components/search/ResultCard.js` - Added entity-aware URL generation
- `/app/src/components/search/taskCard.js` - Fixed Title component
- `/app/src/components/search/flowCard.js` - Fixed Title component
- `/app/src/services/OpenMLSearchConnector.js` - Added entity type metadata
- `/app/src/search_configs/runConfig.js` - Added run_id field

## SEO Impact πŸ“ˆ

**Before:**

- URLs like `/d/123`, `/t/456` are not descriptive
- Search engines can't understand content from URL
- Poor user experience when sharing links
- URLs like `/d/123`, `/t/456` are not descriptive
- Search engines can't understand content from URL
- Poor user experience when sharing links

**After:**

- URLs like `/datasets/123`, `/tasks/456` are self-documenting
- Better search engine indexing
- Professional appearance for academic citations
- Improved social media sharing with descriptive URLs
- URLs like `/datasets/123`, `/tasks/456` are self-documenting
- Better search engine indexing
- Professional appearance for academic citations
- Improved social media sharing with descriptive URLs

## Breaking Changes ⚠️

Expand All @@ -187,13 +186,13 @@ Moved all entity detail pages to their new canonical locations:

For developers working with links:

- Update any hardcoded links to use new URL structure
- Internal links already updated in this PR
- External links will redirect automatically
- Update any hardcoded links to use new URL structure
- Internal links already updated in this PR
- External links will redirect automatically

## Documentation Updated

- `TEAM_REPORT.md` - Updated with new URL structure and redirect information
- `TEAM_REPORT.md` - Updated with new URL structure and redirect information

## Related Issues

Expand Down
Loading