mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	task: Yarn v4 (#7345)
Trying again, this time with correct .gitignore already setup, and a workflow configured to try what was failing prior to our revert.
This commit is contained in:
		
							parent
							
								
									4c4d6e8aeb
								
							
						
					
					
						commit
						a971c770e9
					
				@ -11,3 +11,7 @@
 | 
			
		||||
!README.md
 | 
			
		||||
!frontend
 | 
			
		||||
frontend/node_modules
 | 
			
		||||
!.yarn/**
 | 
			
		||||
!.yarnrc.yml
 | 
			
		||||
!frontend/.yarn/**
 | 
			
		||||
node_modules
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										4
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							@ -40,7 +40,9 @@ jobs:
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: 20.x
 | 
			
		||||
          cache: 'yarn'
 | 
			
		||||
      - run: yarn install --frozen-lockfile --ignore-scripts
 | 
			
		||||
      - run: yarn install --immutable
 | 
			
		||||
        env:
 | 
			
		||||
          YARN_ENABLE_SCRIPTS: false
 | 
			
		||||
      - run: yarn lint
 | 
			
		||||
      - run: yarn build:backend
 | 
			
		||||
      - run: yarn run test:report # This adds test results as github check to the workflow
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										47
									
								
								.github/workflows/build_docker_prs.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								.github/workflows/build_docker_prs.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,47 @@
 | 
			
		||||
name: PR -> Docker build
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  pull_request:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    strategy:
 | 
			
		||||
      matrix:
 | 
			
		||||
        version: [ 20.14.0-alpine ]
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
      - name: Setup QEmu
 | 
			
		||||
        uses: docker/setup-qemu-action@v3
 | 
			
		||||
      - name: Setup Docker buildx
 | 
			
		||||
        uses: docker/setup-buildx-action@v3
 | 
			
		||||
      - name: Docker meta configuration
 | 
			
		||||
        uses: docker/metadata-action@v5
 | 
			
		||||
        id: meta
 | 
			
		||||
        with:
 | 
			
		||||
          images: |
 | 
			
		||||
            unleashorg/unleash-server
 | 
			
		||||
          tags: |
 | 
			
		||||
            # only enabled for workflow dispatch except main (assume its a release):
 | 
			
		||||
            type=semver,pattern={{ version }},enable=${{ github.event_name == 'workflow_dispatch' && github.ref != 'refs/heads/main' }},value=${{ inputs.version }}
 | 
			
		||||
            type=semver,pattern={{ major }}.{{ minor }},enable=${{ github.event_name == 'workflow_dispatch' && github.ref != 'refs/heads/main' }},value=${{ inputs.version }}
 | 
			
		||||
            type=semver,pattern={{ major }},enable=${{ github.event_name == 'workflow_dispatch' && github.ref != 'refs/heads/main' }},value=${{ inputs.version }}
 | 
			
		||||
            # only enabled in main:
 | 
			
		||||
            type=edge,prefix=main-,suffix=-${{ matrix.version }},enable=${{ github.ref == 'refs/heads/main' }}
 | 
			
		||||
            # only enabled on workflow_dispatch:
 | 
			
		||||
            type=sha,suffix=-${{ matrix.version }},enable=${{ github.event_name == 'workflow_dispatch' }}
 | 
			
		||||
      - name: Login to docker hub
 | 
			
		||||
        uses: docker/login-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKERHUB_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.DOCKERHUB_TOKEN }}
 | 
			
		||||
      - name: Build tag and push image to Docker hub
 | 
			
		||||
        uses: docker/build-push-action@v5
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          platforms: linux/amd64,linux/arm64
 | 
			
		||||
          push: false
 | 
			
		||||
          tags: ${{ steps.meta.outputs.tags }}
 | 
			
		||||
          labels: ${{ steps.meta.outputs.labels }}
 | 
			
		||||
          build-args: NODE_VERSION=${{ matrix.version }}
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/build_frontend_prs.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/build_frontend_prs.yml
									
									
									
									
										vendored
									
									
								
							@ -19,8 +19,8 @@ jobs:
 | 
			
		||||
        uses: actions/setup-node@v4
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: 20.x
 | 
			
		||||
      - run: yarn --immutable
 | 
			
		||||
      - run: yarn run lint:material:icons
 | 
			
		||||
      - run: yarn --frozen-lockfile
 | 
			
		||||
      - run: yarn run lint:check
 | 
			
		||||
      - run: yarn run test
 | 
			
		||||
      - run: yarn run ts:check # TODO: optimize
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										6
									
								
								.github/workflows/docker_publish.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.github/workflows/docker_publish.yaml
									
									
									
									
										vendored
									
									
								
							@ -19,7 +19,7 @@ jobs:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    strategy:
 | 
			
		||||
      matrix:
 | 
			
		||||
        version: [20.13.1-alpine]
 | 
			
		||||
        version: [ 20.14.0-alpine ]
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout tag v${{ inputs.version }}
 | 
			
		||||
        if: ${{ inputs.version != '' }}
 | 
			
		||||
@ -53,10 +53,6 @@ jobs:
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKERHUB_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.DOCKERHUB_TOKEN }}
 | 
			
		||||
      - name: Build frontend
 | 
			
		||||
        run: |
 | 
			
		||||
          yarn --cwd ./frontend install
 | 
			
		||||
          yarn build:frontend
 | 
			
		||||
      - name: Build tag and push image to Docker hub
 | 
			
		||||
        uses: docker/build-push-action@v5
 | 
			
		||||
        with:
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										3
									
								
								.github/workflows/e2e.frontend.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/workflows/e2e.frontend.yaml
									
									
									
									
										vendored
									
									
								
							@ -20,9 +20,10 @@ jobs:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
      - name: Run Cypress
 | 
			
		||||
        uses: cypress-io/github-action@v5
 | 
			
		||||
        uses: cypress-io/github-action@v6
 | 
			
		||||
        with:
 | 
			
		||||
          working-directory: frontend
 | 
			
		||||
          env: AUTH_USER=admin,AUTH_PASSWORD=unleash4all
 | 
			
		||||
          config: baseUrl=${{ github.event.deployment_status.target_url }}
 | 
			
		||||
          spec: cypress/integration/${{ matrix.test }}
 | 
			
		||||
          install-command: yarn --immutable
 | 
			
		||||
 | 
			
		||||
@ -50,9 +50,9 @@ jobs:
 | 
			
		||||
          YARN_1="yarn --mutex network --cwd ./current"
 | 
			
		||||
          YARN_2="yarn --mutex network --cwd ./main"
 | 
			
		||||
 | 
			
		||||
          $YARN_1 install --ignore-scripts &> /dev/null && $YARN_1 build:backend --strictNullChecks true 2> .stderr-current > .out-current &
 | 
			
		||||
          $YARN_1 install  &> /dev/null && $YARN_1 build:backend --strictNullChecks true 2> .stderr-current > .out-current &
 | 
			
		||||
          pid1=$!
 | 
			
		||||
          $YARN_2 install --ignore-scripts &> /dev/null && $YARN_2 build:backend --strictNullChecks true 2> .stderr-main > .out-main &
 | 
			
		||||
          $YARN_2 install  &> /dev/null && $YARN_2 build:backend --strictNullChecks true 2> .stderr-main > .out-main &
 | 
			
		||||
          pid2=$!
 | 
			
		||||
 | 
			
		||||
          # wait for the processes that are expected to fail
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										11
									
								
								.github/workflows/notify_enterprise.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.github/workflows/notify_enterprise.yaml
									
									
									
									
										vendored
									
									
								
							@ -12,12 +12,13 @@ jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    strategy:
 | 
			
		||||
      matrix:
 | 
			
		||||
        node-version: [20.x]
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
      - name: Use Node.js 20
 | 
			
		||||
        uses: actions/setup-node@v4
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: 20.x
 | 
			
		||||
          cache: 'yarn'
 | 
			
		||||
      - name: Trigger sync
 | 
			
		||||
        uses: actions/github-script@v7
 | 
			
		||||
        env:
 | 
			
		||||
@ -42,7 +43,7 @@ jobs:
 | 
			
		||||
      - name: Build static assets
 | 
			
		||||
        run: |
 | 
			
		||||
          cd frontend
 | 
			
		||||
          yarn install --frozen-lockfile
 | 
			
		||||
          yarn install --immutable
 | 
			
		||||
          yarn build
 | 
			
		||||
      - uses: aws-actions/configure-aws-credentials@v2
 | 
			
		||||
        with:
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										10
									
								
								.github/workflows/publish-new-version.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/publish-new-version.yaml
									
									
									
									
										vendored
									
									
								
							@ -66,10 +66,12 @@ jobs:
 | 
			
		||||
          else
 | 
			
		||||
            echo "No changes to CHANGELOG.md"
 | 
			
		||||
          fi
 | 
			
		||||
      - run: yarn install --frozen-lockfile --ignore-scripts
 | 
			
		||||
      - run: yarn install --immutable
 | 
			
		||||
        env:
 | 
			
		||||
          YARN_ENABLE_SCRIPTS: false
 | 
			
		||||
      - name: npm version
 | 
			
		||||
        run: |
 | 
			
		||||
          npm version ${{ github.event.inputs.version }} --ignore-scripts
 | 
			
		||||
          npm version ${{ github.event.inputs.version }}
 | 
			
		||||
          git push origin ${{ github.ref_name }}
 | 
			
		||||
          git push --tags
 | 
			
		||||
        env:
 | 
			
		||||
@ -104,8 +106,10 @@ jobs:
 | 
			
		||||
        run: git checkout origin/${{ github.ref_name }} -- CHANGELOG.md
 | 
			
		||||
      - name: lint
 | 
			
		||||
        run: |
 | 
			
		||||
          yarn install --frozen-lockfile --ignore-scripts
 | 
			
		||||
          yarn install --immutable
 | 
			
		||||
          yarn lint:fix
 | 
			
		||||
        env:
 | 
			
		||||
          YARN_ENABLE_SCRIPTS: false
 | 
			
		||||
      - name: push changes
 | 
			
		||||
        run: |
 | 
			
		||||
          git add package.json CHANGELOG.md
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/release.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/release.yaml
									
									
									
									
										vendored
									
									
								
							@ -27,7 +27,7 @@ jobs:
 | 
			
		||||
          cache: 'yarn'
 | 
			
		||||
      - name: Build
 | 
			
		||||
        run: |
 | 
			
		||||
          yarn install --frozen-lockfile
 | 
			
		||||
          yarn install --immutable
 | 
			
		||||
      - name: Publish to npm
 | 
			
		||||
        run: |
 | 
			
		||||
          LATEST=$(npm show unleash-server version)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										6
									
								
								.github/workflows/validate-migrations.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.github/workflows/validate-migrations.yaml
									
									
									
									
										vendored
									
									
								
							@ -31,14 +31,16 @@ jobs:
 | 
			
		||||
        env:
 | 
			
		||||
          DATABASE_URL: postgres://postgres:unleash@localhost:5432/unleash
 | 
			
		||||
          DATABASE_SSL: false
 | 
			
		||||
          YARN_ENABLE_SCRIPTS: false
 | 
			
		||||
        run: |
 | 
			
		||||
          yarn install --frozen-lockfile --ignore-scripts
 | 
			
		||||
          yarn install --immutable
 | 
			
		||||
          yarn db-migrate up
 | 
			
		||||
      # run ui tests against previous version of Unleash
 | 
			
		||||
      - name: Run Cypress
 | 
			
		||||
        uses: cypress-io/github-action@v5
 | 
			
		||||
        uses: cypress-io/github-action@v6
 | 
			
		||||
        with:
 | 
			
		||||
          working-directory: frontend
 | 
			
		||||
          env: AUTH_USER=admin,AUTH_PASSWORD=unleash4all
 | 
			
		||||
          config: baseUrl=http://localhost:4242
 | 
			
		||||
          spec: cypress/oss/**/*.spec.ts
 | 
			
		||||
          install-command: yarn --immutable
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										21
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -70,3 +70,24 @@ reports/jest-junit.xml
 | 
			
		||||
!.yarn/releases
 | 
			
		||||
!.yarn/sdks
 | 
			
		||||
!.yarn/versions
 | 
			
		||||
frontend/.yarn/*
 | 
			
		||||
!frontend/.yarn/patches
 | 
			
		||||
!frontend/.yarn/plugins
 | 
			
		||||
!frontend/.yarn/releases
 | 
			
		||||
!frontend/.yarn/sdks
 | 
			
		||||
!frontend/.yarn/versions
 | 
			
		||||
 | 
			
		||||
docker/.yarn/*
 | 
			
		||||
!docker/.yarn/patches
 | 
			
		||||
!docker/.yarn/plugins
 | 
			
		||||
!docker/.yarn/releases
 | 
			
		||||
!docker/.yarn/sdks
 | 
			
		||||
!docker/.yarn/versions
 | 
			
		||||
 | 
			
		||||
website/.yarn/*
 | 
			
		||||
!website/.yarn/patches
 | 
			
		||||
!website/.yarn/plugins
 | 
			
		||||
!website/.yarn/releases
 | 
			
		||||
!website/.yarn/sdks
 | 
			
		||||
!website/.yarn/versions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
#!/usr/bin/env sh
 | 
			
		||||
. "$(dirname -- "$0")/_/husky.sh"
 | 
			
		||||
 | 
			
		||||
npx lint-staged
 | 
			
		||||
yarn dlx lint-staged
 | 
			
		||||
 | 
			
		||||
node .husky/update-openapi-spec-list.js
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										894
									
								
								.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										894
									
								
								.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										3
									
								
								.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
nodeLinker: node-modules
 | 
			
		||||
 | 
			
		||||
yarnPath: .yarn/releases/yarn-4.3.0.cjs
 | 
			
		||||
@ -7,6 +7,10 @@ Before you begin:
 | 
			
		||||
- Have you read the [code of conduct](CODE_OF_CONDUCT.md)?
 | 
			
		||||
- Check out the [existing issues](https://github.com/unleash/Unleash/issues)
 | 
			
		||||
- Browse the [developer-guide](./website/docs/contributing/developer-guide.md) for tips on environment setup, running the tests, and running Unleash from source.
 | 
			
		||||
- You need 
 | 
			
		||||
  - Node 20
 | 
			
		||||
  - corepack enabled `corepack enable`
 | 
			
		||||
  - yarn installed globally `npm install -g yarn`
 | 
			
		||||
 | 
			
		||||
### Don't see your issue? Open one
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -6,9 +6,9 @@ WORKDIR /unleash
 | 
			
		||||
 | 
			
		||||
COPY . /unleash
 | 
			
		||||
 | 
			
		||||
RUN yarn config set network-timeout 300000
 | 
			
		||||
RUN corepack enable
 | 
			
		||||
 | 
			
		||||
RUN yarn install --frozen-lockfile --ignore-scripts && yarn prepare:backend && yarn local:package
 | 
			
		||||
RUN yarn install --immutable  && yarn prepare:backend && yarn local:package
 | 
			
		||||
 | 
			
		||||
# frontend/build should already exist (it needs to be built in the local filesystem but in case of a fresh build we'll build it here)
 | 
			
		||||
RUN yarn build:frontend:if-needed
 | 
			
		||||
@ -17,7 +17,7 @@ RUN mkdir -p /unleash/build/frontend && mv /unleash/frontend/build /unleash/buil
 | 
			
		||||
 | 
			
		||||
WORKDIR /unleash/docker
 | 
			
		||||
 | 
			
		||||
RUN yarn install --frozen-lockfile --production=true
 | 
			
		||||
RUN yarn workspaces focus -A --production
 | 
			
		||||
 | 
			
		||||
FROM node:$NODE_VERSION
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -53,7 +53,9 @@
 | 
			
		||||
      "src/test/examples/*.json",
 | 
			
		||||
      ".docusaurus",
 | 
			
		||||
      "coverage",
 | 
			
		||||
      "CHANGELOG.md"
 | 
			
		||||
      "CHANGELOG.md",
 | 
			
		||||
      "./package.json",
 | 
			
		||||
      "./frontend/package.json"
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  "organizeImports": {
 | 
			
		||||
@ -74,7 +76,9 @@
 | 
			
		||||
      "coverage",
 | 
			
		||||
      "website/build",
 | 
			
		||||
      "website/global.js",
 | 
			
		||||
      ".docusaurus"
 | 
			
		||||
      ".docusaurus",
 | 
			
		||||
      "./package.json",
 | 
			
		||||
      "./frontend/package.json"
 | 
			
		||||
    ],
 | 
			
		||||
    "indentWidth": 4
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										894
									
								
								docker/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										894
									
								
								docker/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								docker/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								docker/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
yarnPath: .yarn/releases/yarn-4.3.0.cjs
 | 
			
		||||
@ -14,15 +14,9 @@
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "unleash-server": "file:../build"
 | 
			
		||||
  },
 | 
			
		||||
  "version": "5.12.4",
 | 
			
		||||
  "resolutions": {
 | 
			
		||||
    "async": "^3.2.4",
 | 
			
		||||
    "db-migrate/rc/minimist": "^1.2.5",
 | 
			
		||||
    "es5-ext": "0.10.64",
 | 
			
		||||
    "knex/liftoff/object.map/**/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatc/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatc/nanomatch/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatch/define-property/**/kind-of": "^6.0.3",
 | 
			
		||||
    "node-forge": "^1.0.0",
 | 
			
		||||
    "set-value": "^4.0.1",
 | 
			
		||||
    "ansi-regex": "^5.0.1",
 | 
			
		||||
@ -39,5 +33,7 @@
 | 
			
		||||
    "ssh2": "^1.4.0",
 | 
			
		||||
    "json-schema": "^0.4.0",
 | 
			
		||||
    "semver": "^7.5.3"
 | 
			
		||||
  }
 | 
			
		||||
  },
 | 
			
		||||
  "version": "6.0.1",
 | 
			
		||||
  "packageManager": "yarn@4.3.0"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										9450
									
								
								docker/yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										9450
									
								
								docker/yarn.lock
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										894
									
								
								frontend/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										894
									
								
								frontend/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										3
									
								
								frontend/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								frontend/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
nodeLinker: node-modules
 | 
			
		||||
 | 
			
		||||
yarnPath: .yarn/releases/yarn-4.3.0.cjs
 | 
			
		||||
@ -1,3 +1,4 @@
 | 
			
		||||
#!/usr/bin/env sh
 | 
			
		||||
if grep -R --include="*.js" --include="*.jsx" --include="*.ts" --include="*.tsx" "from '@mui/icons-material'" src; then
 | 
			
		||||
  echo "Prohibited import from '@mui/icons-material' found. Use default imports referencing the file instead of the 
 | 
			
		||||
  global package. Example: import Delete from '@mui/icons-material/Delete';'"
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,10 @@
 | 
			
		||||
  "name": "unleash-frontend-local",
 | 
			
		||||
  "version": "0.0.0",
 | 
			
		||||
  "private": true,
 | 
			
		||||
  "files": ["index.js", "build"],
 | 
			
		||||
  "files": [
 | 
			
		||||
    "index.js",
 | 
			
		||||
    "build"
 | 
			
		||||
  ],
 | 
			
		||||
  "engines": {
 | 
			
		||||
    "node": ">=18"
 | 
			
		||||
  },
 | 
			
		||||
@ -16,9 +19,9 @@
 | 
			
		||||
    "start:demo2": "UNLEASH_API=https://sandbox.getunleash.io/ UNLEASH_BASE_PATH=/demo2/ yarn run start",
 | 
			
		||||
    "start:enterprise": "UNLEASH_API=https://unleash.herokuapp.com VITE_TEST_REDIRECT=true yarn run start",
 | 
			
		||||
    "start:demo": "UNLEASH_BASE_PATH=/demo/ UNLEASH_API=https://app.unleash-hosted.com/ yarn run start",
 | 
			
		||||
    "test": "NODE_OPTIONS=\"${NODE_OPTIONS} --no-experimental-fetch\" vitest run",
 | 
			
		||||
    "test:snapshot": "NODE_OPTIONS=\"${NODE_OPTIONS} --no-experimental-fetch\" yarn test -u",
 | 
			
		||||
    "test:watch": "NODE_OPTIONS=\"${NODE_OPTIONS} --no-experimental-fetch\" vitest watch",
 | 
			
		||||
    "test": "NODE_OPTIONS=\"${NODE_OPTIONS:-0} --no-experimental-fetch\" vitest run",
 | 
			
		||||
    "test:snapshot": "NODE_OPTIONS=\"${NODE_OPTIONS:-0} --no-experimental-fetch\" yarn test -u",
 | 
			
		||||
    "test:watch": "NODE_OPTIONS=\"${NODE_OPTIONS:-0} --no-experimental-fetch\" vitest watch",
 | 
			
		||||
    "lint:material:icons": "./check-imports.rc",
 | 
			
		||||
    "lint": "biome lint src --apply",
 | 
			
		||||
    "lint:check": "biome check src",
 | 
			
		||||
@ -142,11 +145,16 @@
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  "browserslist": {
 | 
			
		||||
    "production": [">0.2%", "not dead", "not op_mini all"],
 | 
			
		||||
    "production": [
 | 
			
		||||
      ">0.2%",
 | 
			
		||||
      "not dead",
 | 
			
		||||
      "not op_mini all"
 | 
			
		||||
    ],
 | 
			
		||||
    "development": [
 | 
			
		||||
      "last 1 chrome version",
 | 
			
		||||
      "last 1 firefox version",
 | 
			
		||||
      "last 1 safari version"
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
  },
 | 
			
		||||
  "packageManager": "yarn@4.3.0"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -165,7 +165,7 @@ describe('NewFeatureStrategyCreate', () => {
 | 
			
		||||
 | 
			
		||||
        expect(screen.getByText(expectedSegmentName)).toBeInTheDocument();
 | 
			
		||||
        expect(screen.getByText(expectedConstraintValue)).toBeInTheDocument();
 | 
			
		||||
    });
 | 
			
		||||
    }, 10000);
 | 
			
		||||
 | 
			
		||||
    test('should change variants settings', async () => {
 | 
			
		||||
        const { expectedVariantName } = setupComponent();
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										17481
									
								
								frontend/yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										17481
									
								
								frontend/yarn.lock
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										40
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								package.json
									
									
									
									
									
								
							@ -36,21 +36,18 @@
 | 
			
		||||
    "copy-templates": "copyfiles -u 1 src/mailtemplates/**/*.mustache dist/",
 | 
			
		||||
    "build:backend": "tsc --pretty --strictNullChecks false",
 | 
			
		||||
    "build:frontend": "yarn --cwd ./frontend run build",
 | 
			
		||||
    "build:frontend:if-needed": "if [ ! -d ./frontend/build ]; then yarn install --cwd ./frontend --frozen-lockfile --ignore-scripts && yarn build:frontend; fi",
 | 
			
		||||
    "build": "concurrently \"yarn:copy-templates\" \"yarn:build:frontend\" \"yarn:build:backend\"",
 | 
			
		||||
    "build:frontend:if-needed": "./scripts/build-frontend-if-needed.sh",
 | 
			
		||||
    "build": "yarn run clean && concurrently \"yarn:copy-templates\" \"yarn:build:frontend\" \"yarn:build:backend\"",
 | 
			
		||||
    "dev:backend": "TZ=UTC NODE_ENV=development tsc-watch --strictNullChecks false --onSuccess \"node dist/server-dev.js\"",
 | 
			
		||||
    "dev:frontend": "wait-on tcp:4242 && yarn --cwd ./frontend run dev",
 | 
			
		||||
    "dev": "concurrently \"yarn:dev:backend\" \"yarn:dev:frontend\"",
 | 
			
		||||
    "prepare:backend": "concurrently \"yarn:copy-templates\" \"yarn:build:backend\"",
 | 
			
		||||
    "prestart:dev": "yarn run clean",
 | 
			
		||||
    "start:dev": "TZ=UTC NODE_ENV=development tsc-watch --strictNullChecks false --onSuccess \"node dist/server-dev.js\"",
 | 
			
		||||
    "start:dev": "yarn run clean && TZ=UTC NODE_ENV=development tsc-watch --strictNullChecks false --onSuccess \"node dist/server-dev.js\"",
 | 
			
		||||
    "db-migrate": "db-migrate --migrations-dir ./src/migrations",
 | 
			
		||||
    "lint": "biome check .",
 | 
			
		||||
    "lint:fix": "biome check . --write",
 | 
			
		||||
    "local:package": "del-cli --force build && mkdir build && cp -r dist docs CHANGELOG.md LICENSE README.md package.json build",
 | 
			
		||||
    "prebuild:watch": "yarn run clean",
 | 
			
		||||
    "build:watch": "tsc -w --strictNullChecks false",
 | 
			
		||||
    "prebuild": "yarn run clean",
 | 
			
		||||
    "build:watch": "yarn run clean && tsc -w --strictNullChecks false",
 | 
			
		||||
    "prepare": "husky && yarn --cwd ./frontend install && if [ ! -d ./dist ]; then yarn build; fi",
 | 
			
		||||
    "test": "NODE_ENV=test PORT=4243 node --trace-warnings node_modules/.bin/jest",
 | 
			
		||||
    "test:unit": "NODE_ENV=test PORT=4243 jest --testPathIgnorePatterns=src/test/e2e --testPathIgnorePatterns=dist",
 | 
			
		||||
@ -82,7 +79,9 @@
 | 
			
		||||
    "testTimeout": 10000,
 | 
			
		||||
    "globalSetup": "./scripts/jest-setup.js",
 | 
			
		||||
    "transform": {
 | 
			
		||||
      "^.+\\.tsx?$": ["@swc/jest"]
 | 
			
		||||
      "^.+\\.tsx?$": [
 | 
			
		||||
        "@swc/jest"
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    "testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
 | 
			
		||||
    "testPathIgnorePatterns": [
 | 
			
		||||
@ -91,7 +90,13 @@
 | 
			
		||||
      "/frontend/",
 | 
			
		||||
      "/website/"
 | 
			
		||||
    ],
 | 
			
		||||
    "moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json"],
 | 
			
		||||
    "moduleFileExtensions": [
 | 
			
		||||
      "ts",
 | 
			
		||||
      "tsx",
 | 
			
		||||
      "js",
 | 
			
		||||
      "jsx",
 | 
			
		||||
      "json"
 | 
			
		||||
    ],
 | 
			
		||||
    "coveragePathIgnorePatterns": [
 | 
			
		||||
      "/node_modules/",
 | 
			
		||||
      "/dist/",
 | 
			
		||||
@ -214,12 +219,7 @@
 | 
			
		||||
  },
 | 
			
		||||
  "resolutions": {
 | 
			
		||||
    "async": "^3.2.4",
 | 
			
		||||
    "db-migrate/rc/minimist": "^1.2.5",
 | 
			
		||||
    "es5-ext": "0.10.64",
 | 
			
		||||
    "knex/liftoff/object.map/**/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatc/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatc/nanomatch/kind-of": "^6.0.3",
 | 
			
		||||
    "knex/liftoff/findup-sync/micromatch/define-property/**/kind-of": "^6.0.3",
 | 
			
		||||
    "node-forge": "^1.0.0",
 | 
			
		||||
    "set-value": "^4.0.1",
 | 
			
		||||
    "ansi-regex": "^5.0.1",
 | 
			
		||||
@ -232,8 +232,12 @@
 | 
			
		||||
    "tough-cookie": "4.1.4"
 | 
			
		||||
  },
 | 
			
		||||
  "lint-staged": {
 | 
			
		||||
    "*.{js,ts}": ["biome check --write --no-errors-on-unmatched"],
 | 
			
		||||
    "*.{jsx,tsx}": ["biome check --write --no-errors-on-unmatched"],
 | 
			
		||||
    "*.json": ["biome format --write --no-errors-on-unmatched"]
 | 
			
		||||
  }
 | 
			
		||||
    "*.{js,ts}": [
 | 
			
		||||
      "biome check --write --no-errors-on-unmatched"
 | 
			
		||||
    ],
 | 
			
		||||
    "*.{jsx,tsx}": [
 | 
			
		||||
      "biome check --write --no-errors-on-unmatched"
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  "packageManager": "yarn@4.3.0"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										4
									
								
								scripts/build-frontend-if-needed.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										4
									
								
								scripts/build-frontend-if-needed.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,4 @@
 | 
			
		||||
#!/usr/bin/env sh
 | 
			
		||||
if [ ! -d ./frontend/build ]; then
 | 
			
		||||
    yarn --cwd ./frontend install --immutable && yarn build:frontend;
 | 
			
		||||
fi
 | 
			
		||||
@ -46,7 +46,7 @@ default:
 | 
			
		||||
.PHONY: prepare
 | 
			
		||||
prepare: 
 | 
			
		||||
	@echo "Preparing the environment..."
 | 
			
		||||
	@yarn --cwd .. install --frozen-lockfile --ignore-scripts
 | 
			
		||||
	@yarn --cwd .. install --frozen-lockfile 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY: apply-migrations
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										894
									
								
								website/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										894
									
								
								website/.yarn/releases/yarn-4.3.0.cjs
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								website/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								website/.yarnrc.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
yarnPath: .yarn/releases/yarn-4.3.0.cjs
 | 
			
		||||
@ -16,9 +16,10 @@ We have created a set of ADRs to help guide the development of the backend:
 | 
			
		||||
Before developing on this project you will need two things:
 | 
			
		||||
 | 
			
		||||
- PostgreSQL 14.x or newer
 | 
			
		||||
- Node.js 14.x or newer
 | 
			
		||||
- Node.js 20.x or newer
 | 
			
		||||
 | 
			
		||||
```sh
 | 
			
		||||
corepack enable
 | 
			
		||||
yarn install
 | 
			
		||||
yarn dev
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,7 @@ title: Front end
 | 
			
		||||
 | 
			
		||||
## Frontend overview
 | 
			
		||||
 | 
			
		||||
The frontend is written in react/typescript. It's is a single page application that communicates with the backend via a REST API. The frontend is built using vite and served by the backend.
 | 
			
		||||
The frontend is written in react/typescript. It's a single page application that communicates with the backend via a REST API. The frontend is built using vite and served by the backend.
 | 
			
		||||
 | 
			
		||||
## ADRs
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -54,7 +54,11 @@
 | 
			
		||||
    "semver": "^7.5.3"
 | 
			
		||||
  },
 | 
			
		||||
  "browserslist": {
 | 
			
		||||
    "production": [">0.5%", "not dead", "not op_mini all"],
 | 
			
		||||
    "production": [
 | 
			
		||||
      ">0.5%",
 | 
			
		||||
      "not dead",
 | 
			
		||||
      "not op_mini all"
 | 
			
		||||
    ],
 | 
			
		||||
    "development": [
 | 
			
		||||
      "last 1 chrome version",
 | 
			
		||||
      "last 1 firefox version",
 | 
			
		||||
@ -70,5 +74,6 @@
 | 
			
		||||
    "react-router": "6.23.1",
 | 
			
		||||
    "replace-in-file": "7.2.0",
 | 
			
		||||
    "typescript": "5.4.5"
 | 
			
		||||
  }
 | 
			
		||||
  },
 | 
			
		||||
  "packageManager": "yarn@4.3.0"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										28828
									
								
								website/yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										28828
									
								
								website/yarn.lock
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user