You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2021/03/10 02:40:29 UTC

[GitHub] [airflow] ryanahamilton commented on a change in pull request #14691: Initialize the new UI project

ryanahamilton commented on a change in pull request #14691:
URL: https://github.com/apache/airflow/pull/14691#discussion_r590949769



##########
File path: airflow/ui/package.json
##########
@@ -0,0 +1,45 @@
+{
+  "name": "ui",
+  "version": "1.0.0",
+  "main": "index.js",
+  "license": "MIT",
+  "scripts": {
+    "start": "webpack-dev-server --mode development --open",
+    "build": "webpack --mode production",
+    "test": "jest",
+    "lint": "eslint --format codeframe --ext mjs,jsx,js,tsx,ts src test && tsc"
+  },
+  "dependencies": {
+    "@chakra-ui/react": "^1.3.4",
+    "@emotion/react": "^11.1.5",
+    "@emotion/styled": "^11.1.5",
+    "dotenv": "^8.2.0",
+    "framer-motion": "^3.10.0",
+    "prop-types": "^15",

Review comment:
       Is this actually needed?

##########
File path: airflow/ui/README.md
##########
@@ -0,0 +1,51 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
+
+# Airflow UI POC

Review comment:
       ```suggestion
   # Airflow UI
   ```

##########
File path: airflow/ui/.neutrinorc.js
##########
@@ -0,0 +1,67 @@
+/*!
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/*
+  Config for running and building the app
+*/
+require('dotenv').config();
+const typescript = require('neutrinojs-typescript');
+const typescriptLint = require('neutrinojs-typescript-eslint');
+const react = require('@neutrinojs/react');
+const jest = require('@neutrinojs/jest');
+const eslint = require('@neutrinojs/eslint');
+const { resolve } = require('path');
+const copy = require('@neutrinojs/copy');
+
+module.exports = {
+  options: {
+    root: __dirname,
+  },
+  use: [
+    (neutrino) => {
+      // Aliases for internal modules
+      neutrino.config.resolve.alias.set('root', resolve(__dirname));
+      neutrino.config.resolve.alias.set('src', resolve(__dirname, 'src'));
+    },
+    typescript(),
+    // Modify typescript config in .tsconfig.json
+    typescriptLint(),
+    eslint({
+      eslint: {
+        // Modify eslint config in .eslintrc.js config instead
+        useEslintrc: true,
+      },
+    }),
+    jest({
+      moduleDirectories: ['node_modules', 'src'],
+    }),
+    react({
+      html: {
+        title: 'Apache Airflow',
+      }
+    }),
+    copy({
+      patterns: [
+        { from: 'src/static/favicon.ico', to: '.' },
+        { from: 'src/static/robots.txt', to: '.' },
+        { from: 'src/static/_redirects', to: '.' },

Review comment:
       Both of these were tied to the POC Prod environment (Netlify). I think we want to remove these and the associated files.
   ```suggestion
   ```

##########
File path: airflow/ui/.gitignore
##########
@@ -0,0 +1,119 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+
+# Diagnostic reports (https://nodejs.org/api/report.html)
+report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+*.lcov
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# Snowpack dependency directory (https://snowpack.dev/)
+web_modules/
+
+# TypeScript cache
+*.tsbuildinfo
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Microbundle cache
+.rpt2_cache/
+.rts2_cache_cjs/
+.rts2_cache_es/
+.rts2_cache_umd/
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+.env.test
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+.parcel-cache
+
+# Next.js build output
+.next
+out
+
+# Nuxt.js build / generate output
+.nuxt
+dist
+
+# Gatsby files
+.cache/
+# Comment in the public line in if your project uses Gatsby and not Next.js
+# https://nextjs.org/blog/next-9-1#public-directory-support
+# public
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# TernJS port file
+.tern-port
+
+# Stores VSCode versions used for testing VSCode extensions
+.vscode-test
+
+# yarn v2
+.yarn/cache
+.yarn/unplugged
+.yarn/build-state.yml
+.yarn/install-state.gz
+.pnp.*
+
+# Neutrino build directory
+build

Review comment:
       @ash thoughts on utilizing a secondary gitignore instead of just the one on the mono-repo root?
   
   There are definitely some redundancies here with the existing fileā€”also some things we may never need. I wonder if it would be better to just leverage the existing file and add to it as needed?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org