• Joseph Axisa's avatar
    [Part 2 - APIX Declaration Links] - Script for mining Ruby declarations (#406) · 6a0026cb
    Joseph Axisa authored
    * Modified getCodeFiles to accept a file filter callback
    
    * Declaration miner
    
    Also added a declarationInfo function in sdk-codegen for looking up a
    declaration and creating a permalink
    
    * Fixed section bug in NodeSettings
    
    Prior to this, the section constructor argument was not being saved
    
    * mineDeclarations script
    
    This is for mining a ruby codebase for method/type declarations. It requires defining a Miner section in looker.ini and setting base_url as the relative path to the codebase
    
    * added mine:declarations script in package.json
    
    Also renamed mine to mine:examples
    
    yarn:mine now runs both the example and declaration miners
    Unverified
    6a0026cb
This project manages its dependencies using yarn. Learn more
package.json 6.88 KiB
  "license": "MIT",
  "name": "sdk-codegen-all",
  "description": "All workspaces for SDK code generation",
  "author": "Looker",
  "private": true,
  "workspaces": [
    "packages/*"
  ],
  "homepage": "https://github.com/looker-open-source/sdk-codegen#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/looker-open-source/sdk-codegen.git"
  "bugs": {
    "url": "https://github.com/looker-open-source/sdk-codegen/issues"
  "engines": {
    "node": ">=12",
    "yarn": ">=1.14.0"
  "scripts": {
    "convert": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/src/specConvert.ts",
    "legacy": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/src/legacy.ts",
    "sdk": "NODE_CONFIG_DIR=./packages/sdk-codegen-scripts/config ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/src/sdkGen.ts",
    "jsonify": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/src/yamlToJson.ts",
    "mine": "run-p -c mine:*",
    "mine:declarations": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/scripts/mineDeclarations.ts",
    "mine:examples": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/scripts/mine.ts",
    "example": "ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }'",
    "view": "yarn api-explorer",
    "wipe": "rm -rf api spec",
    "prebuild": "yarn clean",
    "build": "run-p -c build:*",
    "build:es": "yarn lerna exec --stream 'BABEL_ENV=build babel src --root-mode upward --out-dir lib --source-maps --extensions .ts,.tsx --no-comments'",
    "build:ts": "yarn lerna exec --stream --sort 'tsc -b tsconfig.build.json'",
    "clean": "rm -Rf packages/*/lib",
    "prepublishOnly": "yarn jest packages/sdk/",
    "deploy": "yarn workspace sdk deploy",
    "deploy:codegen": "lerna run deploy --scope sdk-codegen -c",
    "deploy:sdk": "lerna run deploy --scope sdk",
    "fix": "yarn lint:es --fix",
    "lint": "run-p -c lint:*",
    "lint:es": "eslint 'packages/**/*.ts{,x}' --cache",
    "lint:ts": "tsc",
    "lint-staged": "yarn exec lint-staged",
    "lint:spec": "SUPPRESS_NO_CONFIG_WARNING=1 ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/sdk-codegen-scripts/scripts/specLinter.ts",
    "refresh": "SUPPRESS_NO_CONFIG_WARNING=1 ts-node -O '{ \"module\": \"commonjs\", \"target\": \"es2019\" }' packages/api-explorer/scripts/refresh_specs.ts",
    "test": "yarn jest",
    "test:ts": "yarn jest --reporters=default --reporters=jest-junit",
    "test:apix": "yarn jest packages/api-explorer packages/run-it packages/extension-api-explorer",
    "test:iphone": "xcodebuild test -project swift/looker/looker.xcodeproj -scheme looker-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 11,OS=13.4.1' | xcpretty --test --color",
    "test:jest": "DOT_ENV_FILE=.env.test jest",
    "bootstrap": "lerna clean -y && lerna bootstrap",
    "watch": "lerna run --parallel watch"
  "devDependencies": {
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
"@stoplight/spectral": "^5.6.0", "@testing-library/jest-dom": "^5.11.5", "@types/blueimp-md5": "^2.7.0", "@types/ini": "^1.3.30", "@types/jest": "^25.2.3", "@types/js-yaml": "^3.12.1", "@types/lodash": "^4.14.162", "@types/node": "^13.13.4", "@types/prettier": "^1.18.2", "@types/readable-stream": "^2.3.5", "@types/request": "^2.48.3", "@types/request-promise-native": "^1.0.17", "babel-core": "^7.0.0-bridge", "babel-plugin-styled-components": "^1.10.7", "core-js": "^3.6.5", "enzyme": "^3.11.0", "enzyme-adapter-react-16": "^1.15.2", "eslint": "^6.8.0", "eslint-import-resolver-typescript": "^2.0.0", "eslint-import-resolver-webpack": "^0.12.1", "eslint-plugin-header": "^3.0.0", "eslint-plugin-import": "^2.20.2", "eslint-plugin-mdx": "^1.6.8", "eslint-plugin-prettier": "^3.1.3", "jest": "^26.4.0", "jest-canvas-mock": "^2.2.0", "jest-junit": "^10.0.0", "jest-styled-components": "^6.3.4", "js-yaml": "^3.13.1", "lerna": "^3.20.2", "lint-staged": "^10.2.2", "lodash": "^4.17.15", "node-fetch": "^2.6.0", "npm-run-all": "^4.1.5", "openapi3-ts": "^1.3.0", "pre-commit": "1.2.2", "prettier": "^2.1.1", "react": "^16.13.1", "react-dom": "^16.13.1", "styled-components": "^4.4.1", "ts-jest": "^26.2.0", "ts-node": "^8.1.0", "typescript": "3.8.2", "webpack": "^4.43.0", "node-forge": "^0.10.0", "node-uuid": "^1.4.8" }, "dependencies": {}, "lint-staged": { "**/*.ts?(x)": [ "eslint" ], "**/*.js?(x)": [ "eslint" ], "**/*.mdx": [ "eslint" ] }, "pre-commit": [ "lint-staged" ], "eslintConfig": { "extends": [ "@looker/eslint-config/no-type-checking" ], "plugins": [ "header", "prettier" ],
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
"rules": { "prettier/prettier": "error", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/camelcase": "off", "@typescript-eslint/interface-name-prefix": "off", "@typescript-eslint/no-unused-vars": [ "warn", { "args": "all", "argsIgnorePattern": "^_" } ], "sort-keys-fix/sort-keys-fix": "off", "no-useless-constructor": "off", "@typescript-eslint/no-empty-interface": "off", "header/header": [ 2, "config/license-header.js" ], "import/default": "off", "sort-keys": "off", "spaced-comment": [ "error", "always", { "markers": ["#"] } ] }, "settings": { "import/resolver": { "typescript": { "directory": "./tsconfig.json" } }, "import/external-module-folders": [ "node_modules", "packages" ] }, "overrides": [ { "files": [ "*.js" ], "rules": { "@typescript-eslint/no-var-requires": "off" } } ] }, "prettier": "@looker/prettier-config", "prettierConfig": { "overrides": { "rules": { "trailingComma": "all" } } }, "keywords": [], "resolutions": { "set-value": "^2.0.1", "typescript": "3.8.2" } }