Con código sas regular sasj

Con código sas regular sasj
Con código sas regular sasj
Los proyectos de software a medida que se extienden el tamaño y la complejidad, mantener un código estándar consistente es clave. Estos códigos estándar mejoran la seguridad del proyecto de software, la legibilidad, la difusión y el mantenimiento. Construir un Mensaje anteriorMostraremos la Biblioteca SASJS junto con las acciones de Gitub, el código SAS consistente es consistente durante el almacén.
¿Por qué forzar las reglas de codificación?
- Colateral: La práctica de codificación coherente ayuda a prevenir la debilidad y garantizar que las medidas de seguridad se apliquen de manera uniforme a través del código del código.
- Legible: La mejor legibilidad es más fácil de entender y revisar el código de los demás, una colaboración efectiva y facilitar los buques de los nuevos miembros del equipo.
- Extensión: El código estándar permite a los desarrolladores agregar o cambiar nuevas funciones con una desaparición mínima de las ondas, el verano, el código del código puede evolucionar con el tiempo.
- Persistencia: La práctica de codificación coherente reduce la complejidad del código, finalmente depuración, actualizada y refactor, el producto de software es más estable e importante.
Verificación de delitos de código SAS estándar con pelusa SASJS
Para comenzar a usar Sasjs Necesitamos instalar nuestro código, instalar. SASJS está disponible para Node Package Manager (NPM). Siga estos pasos para instalar:
- Instalar nodos
- Vaya a su proyecto en un CLI y ejecute la pelusa de Sasjs
Configure SASJS para usar sus estándares
Para configurar SASJS para vincular a sus gigantes, debe subir siete directamente a su proyecto .Sasjs Fillle. Opciones de estante 1. Aparecen en la mesa.
Nombre de opción | Tipo | Por defecto | Descripción |
nogremlins | Booleum | Auténtico | No dejes personajes invisibles |
backgremlins | Lista de cadenas | Ninguno | Hexagres que representan a Gremlins autorizados |
por defecto | Cadena | Ninguno | La pelusa de Sasjs solucionada cuando se ejecuta en filas es el cabezal predeterminado |
Hechicero | Booleum | Auténtico | El encabezado de doxygen se identifica donde proviene de 1. No comienza en la línea |
HasmacronameInmend | Booleum | Auténtico | Comprueba si el nombre macro está en la declaración de% mend |
Hasmacroparentesis | Booleum | Auténtico | Comprueba si tiene espacios entre el nombre macro y la apertura de los paréntesis |
HaqueadoMacrooptions | Booleum | FALSO | Compruebe si las macros tienen las opciones necesarias |
Necesario | Lista de cadenas | Ninguno | Opciones de macro para llenar con Macrooptions Haskequired |
negación | Lista de cadenas | Ninguno | Olvidado o lista de directores |
inspección | Integrar | 2 | Verifique este número para asegurarse de que esté dividido por este número |
Once | Cadena | "Apagado" | Verifique las líneas de ajuste de ajuste correctamente configuradas. Opciones (LF, CRLF, OFF) |
Minúsculas | Booleum | Leal | El nombre Flue verifica que siempre son minúsculas |
Maxdatalinengt | Integrar | 80 | Longitud máxima de línea para líneas de datos. Aproximadamente maxlinel |
Maxheaderlinelengtoa | Integrar | 80 | Longitud de la línea máxima del encabezado del programa. Aproximadamente maxlinel |
Maxlinelengua | Integrar | 80 | Longitud de línea máxima. |
Notendodedpasswords | Booleum | Leal | Una fila no es una contraseña de tipo SAS00X o SASASC |
Macros no probados | Booleum | Leal | Comprueba si las macros se definen dentro de otra macro |
Nospacesinfileneames | Booleum | Leal | El archivo anual verifica que el Hava nombró espacios |
Notarios | Booleum | Auténtico | Asegúrese de que las pestañas no se usen |
NotRailingspaces | Booleum | Auténtico | Dirige las líneas |
Gravedad de nivel | Dictado | Permite al usuario "advertir" o "error" para cada opción |
1. Tabla: Lista de regulaciones dadas por SASJS
Un estudio. La configuración de valor predeterminada aparece aquí:
{ "hasDoxygenHeader": true, "hasMacroNameInMend": true, "hasMacroParentheses": true, "ignoreList": ("sasjsbuild/", "sasjsresults/"), "indentationMultiple": 2, "lineEndings": "off", "lowerCaseFileNames": true, "maxDataLineLength": 80, "maxHeaderLineLength": 80, "maxLineLength": 80, "noEncodedPasswords": true, "noNestedMacros": true, "noGremlins": true, "noSpacesInFileNames": true, "noTabs": true, "noTrailingSpaces": true, "defaultHeader": "/** Default File Header Here **/", "severityLevel": { "hasDoxygenHeader": "warn", "maxLineLength": "warn", "noTrailingSpaces": "error" } } |
Uso de la acción de GitHub en un código estándar protegido
Ahora estamos listos para configurar los cheques de Gitub. Este código que arroja un error basado en nuestra consolidación no se reconcilia en la rama principal.
- .Github / Workflows Management, cree un archivo sasjs-lint.yaml
- Copie lo siguiente en su archivo sasjs-lint.yaml, si está utilizando el centro de git predeterminado para ejecutar entornos,
• on: • pull_request: • branches: • - main • - release* • • jobs: • build: • runs-on: ubuntu-latest • • strategy: • matrix: • node-version: (lts/*) • • steps: • - uses: actions/checkout@v2 • - name: Use Node.js ${{ matrix.node-version }} • uses: actions/setup-node@v2 • with: • node-version: ${{ matrix.node-version }} • cache: npm • - name: Check Code Style • run: npm run lint
- Si ya está utilizando un SASJS / CLI personalizado, puede usar lo siguiente:
4. name: sasjs-lint 5. on: 6. pull_request: 7. branches: 8. - main 9. - release* 10. 11. jobs: 12. sasjs-lint: 13. runs-on: custom-build 14. 15. container: 16. image: custom-image 17. options: --user root 18. 19. steps: 20. - uses: actions/checkout@v2 21. - name: Run the lint (code quality) check 22. run: sasjs lint
Durante años para extraer, una rama principal o una rama de retransmisión, si se activa una configuración marcada como un "error", el flujo de trabajo fallará y bloqueará el proceso. Esto evitará cualquier código que no coincida con las reglas nombradas.
Resumen
Usando SASJS, podemos personalizar nuestros estándares de código SAS. El apalancamiento de Githubek se puede hacer para garantizar que el año termine en nuestras sucursales. Esto nos permitirá mejorar la seguridad, la legibilidad, la extensión y el mantenimiento de nuestro código.
Confianza y innovación responsables: ‘En este momento es en todo momento
Deja una respuesta