From f3e114683be723674caa7d5ad68dab7cea48fa57 Mon Sep 17 00:00:00 2001 From: Vinish Reddy Date: Fri, 8 Nov 2024 14:57:47 -0800 Subject: [PATCH] Add downloads page for 0.2.0-incubating --- .github/workflows/site-deploy.yml | 1 - website/README.md | 29 +++++++++++++++ website/docusaurus.config.js | 13 +++++++ website/releases/downloads.mdx | 13 +++++++ website/releases/release-0.2.0-incubating.mdx | 35 +++++++++++++++++++ website/static/index.html | 2 ++ 6 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 website/releases/downloads.mdx create mode 100644 website/releases/release-0.2.0-incubating.mdx diff --git a/.github/workflows/site-deploy.yml b/.github/workflows/site-deploy.yml index 89d003a5c..3b11818f3 100644 --- a/.github/workflows/site-deploy.yml +++ b/.github/workflows/site-deploy.yml @@ -53,7 +53,6 @@ jobs: with: personal_token: ${{ secrets.XTABLE_SITE_DEPLOY }} external_repository: apache/incubator-xtable-site - keep_files: false publish_branch: main publish_dir: ./website/build user_name: ${{ github.actor }} diff --git a/website/README.md b/website/README.md index 0ec5132cc..b8e3bd9f9 100644 --- a/website/README.md +++ b/website/README.md @@ -60,6 +60,27 @@ npm run serve > [!NOTE] > If you make changes to the contents inside `docs` directory, you can verify the changes locally by visiting https://localhost:3000/docs/setup after running `npm run serve`. +## Creating new pages with navbar access +1. Create a new folder i.e. `releases` inside the `website` directory +2. Create a new file i.e. `downloads.mdx` inside the `releases` directory +3. Add necessary content to the markdown file +4. Include the reference to the new folder in the `docusaurus.config.js` file as follows: +* Add the new folder to the `plugins` array under `config` key, like +```javascript + [ + '@docusaurus/plugin-content-docs', + { + id: 'releases', + path: 'releases', + routeBasePath: 'releases', + }, + ] +``` +* Add the new folder to the `items` array under `navbar` key, like +```javascript + {to: 'releases/downloads', label: 'Downloads', position: 'left'} +``` + ## Docs ### Creating new docs 1. Place the new file into the `docs` folder. @@ -79,6 +100,14 @@ npm run serve > [!NOTE] > You may see broken thumbnails for the blogs during `npm start` or `npm serve` because the images needs to be rendered from the main repo. This can only be tested after being merged to the main branch. +## Releases +### Adding new release +1. Create a `.mdx` file similar to `website/releases/release-0.2.0-incubating.mdx` +2. Update the [downloads](releases/downloads.mdx) file to include the new release similar to the existing releases + +## Changes to the website homepage +1. The homepage is a `.html` file located at `website/static/index.html` +2. If you're making changes to the page, test it locally using `python 3 -m http.server` and visiting http://localhost:8000/ before pushing the changes. ## Maintainers [Apache XTable™ (Incubating) Community](https://incubator.apache.org/projects/xtable.html) diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index aa9cd2cf4..da137ad13 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -23,6 +23,18 @@ const config = { locales: ['en'], }, + // add new pages here + plugins: [ + [ + '@docusaurus/plugin-content-docs', + { + id: 'releases', + path: 'releases', + routeBasePath: 'releases', + }, + ], + ], + presets: [ [ 'classic', @@ -65,6 +77,7 @@ const config = { position: 'right', }, {to: 'blog', label: 'Blogs', position: 'left'}, + {to: 'releases/downloads', label: 'Downloads', position: 'left'}, ], }, prism: { diff --git a/website/releases/downloads.mdx b/website/releases/downloads.mdx new file mode 100644 index 000000000..f3d3a8450 --- /dev/null +++ b/website/releases/downloads.mdx @@ -0,0 +1,13 @@ +--- +title: Downloads +sidebar_position: 1 +--- + +Apache XTable™ (incubating) releases are available under the Apache License, Version 2.0. See the NOTICE file contained in each release artifact for applicable copyright attribution notices. + +To ensure that you have downloaded the true release, you should [verify](https://www.apache.org/info/verification.html) the integrity of the files using the signatures and checksums available in this page. All releases are signed using the [Apache XTable KEYS file](https://downloads.apache.org/incubator/xtable/KEYS). + +### Release 0.2.0-incubating +* Source Release: [Apache XTable 0.2.0-incubating Source Release](https://dlcdn.apache.org/incubator/xtable/0.2.0-incubating/apache-xtable-0.2.0-incubating.src.tgz) ([asc](https://downloads.apache.org/incubator/xtable/0.2.0-incubating/apache-xtable-0.2.0-incubating.src.tgz.asc), [sha512](https://downloads.apache.org/incubator/xtable/0.2.0-incubating/apache-xtable-0.2.0-incubating.src.tgz.sha512)) +* Release Notes: [Release Notes 0.2.0-incubating](release-0.2.0-incubating.mdx) +* Maven Search: [Apache XTable 0.2.0-incubating](https://central.sonatype.com/search?q=g:org.apache.xtable%20v:0.2.0-incubating&smo=true) \ No newline at end of file diff --git a/website/releases/release-0.2.0-incubating.mdx b/website/releases/release-0.2.0-incubating.mdx new file mode 100644 index 000000000..c00697e33 --- /dev/null +++ b/website/releases/release-0.2.0-incubating.mdx @@ -0,0 +1,35 @@ +--- +title: "Release 0.2.0-incubating" +sidebar_position: 1 +--- + +## [Release 0.2.0-incubating](https://github.com/apache/incubator-xtable/releases/tag/0.2.0-incubating) ([docs](https://xtable.apache.org/docs/how-to)) +This is the second official Apache release for Apache XTable (Incubating), an incubating project under the Apache Software Foundation. +Apache XTable™ (Incubating) facilitates omni-directional interoperability across data processing systems and query engines by allowing users to convert between open table formats without the need to rewrite any data files. +Currently, Apache XTable™ (Incubating) supports the open-source table formats for Apache Hudi, Apache Iceberg, and Delta Lake. + +## Features +Apache XTable™ (Incubating) provides users with the ability to translate metadata from one table format to another. + +Apache XTable™ (Incubating) provides two sync modes, "incremental" and "full." The incremental mode is more lightweight and has better performance, especially on large tables. If there is anything that prevents the incremental mode from working properly, the tool will fall back to the full sync mode. + +This sync provides users with the following: + +1. Syncing of data files along with their column level statistics and partition metadata +2. Schema updates in the source are reflected in the target table metadata +3. Metadata maintenance for the target table formats. + * For Hudi, unreferenced files will be marked as [cleaned](https://hudi.apache.org/docs/hoodie_cleaner/) to control the size of the metadata table. + * For Iceberg, snapshots will be [expired](https://iceberg.apache.org/docs/latest/maintenance/#expire-snapshots) after a configured amount of time. + * For Delta, the transaction log will be [retained](https://docs.databricks.com/en/sql/language-manual/delta-vacuum.html) for a configured amount of time. + + +## Improvements +1. Added apache release guide and infra components to be compliant with ASF release process. +2. Updated LICENSE and NOTICE file contents based on guidance given by [LEGAL-684](https://issues.apache.org/jira/browse/LEGAL-684) +3. Fix bugs related to dependency conflicts, few edge cases related to column stats, non numeric values of double type in delta stats etc. +4. Improved README, docker demo and website docs based on feedback provided by users. +5. Refactored the codebase to follow apache naming practices. + +## GH Release Notes +https://github.com/apache/incubator-xtable/releases/tag/0.2.0-incubating + \ No newline at end of file diff --git a/website/static/index.html b/website/static/index.html index 90f0820b7..bf23653ca 100644 --- a/website/static/index.html +++ b/website/static/index.html @@ -34,6 +34,7 @@ Home Docs Blogs + Downloads @@ -50,6 +51,7 @@ Home Docs Blogs + Downloads GitHub LinkedIn Twitter