Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 0 additions & 19 deletions .ember-cli

This file was deleted.

1 change: 1 addition & 0 deletions .env.development
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NODE_ENV=development
2 changes: 2 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
90a25e4fa93b282af8b4cb09e62331617dc07120
24eb84b5ba84bb6481038da2fb5db96ecddfe5e1
43 changes: 18 additions & 25 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ jobs:
name: "Tests"
runs-on: ubuntu-latest
timeout-minutes: 10
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}

steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 10
- name: Install Node
uses: actions/setup-node@v4
with:
Expand All @@ -32,7 +32,9 @@ jobs:
- name: Lint
run: pnpm lint
- name: Run Tests
run: pnpm test:ember
run: pnpm test
- id: set-matrix
run: echo "matrix=$(pnpm -s dlx @embroider/try list)" >> $GITHUB_OUTPUT

floating:
name: "Floating Dependencies"
Expand All @@ -42,48 +44,39 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 10
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- name: Install Dependencies
run: pnpm install --no-lockfile
- name: Build
run: pnpm build
- name: Run Tests
run: pnpm test:ember
run: pnpm test

try-scenarios:
name: ${{ matrix.try-scenario }}
name: ${{ matrix.name }}
runs-on: ubuntu-latest
needs: "test"
timeout-minutes: 10

strategy:
fail-fast: false
matrix:
try-scenario:
- ember-lts-4.12
- ember-lts-5.4
- ember-lts-5.8
- ember-lts-5.12
- ember-release
- ember-beta
- ember-canary
- embroider-safe
- embroider-optimized
matrix: ${{fromJson(needs.test.outputs.matrix)}}

steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 10
- name: Install Node
uses: actions/setup-node@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- name: Apply Scenario
run: pnpm dlx @embroider/try apply ${{ matrix.name }}
- name: Install Dependencies
run: pnpm install --frozen-lockfile
run: pnpm install --no-lockfile
- run: pnpm build
env: ${{ matrix.env }}
- name: Run Tests
run: ./node_modules/.bin/ember try:one ${{ matrix.try-scenario }}
run: pnpm test
env: ${{ matrix.env }}
2 changes: 0 additions & 2 deletions .github/workflows/plan-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@ jobs:
fetch-depth: 0
ref: 'main'
- uses: pnpm/action-setup@v4
with:
version: 10
- uses: actions/setup-node@v4
with:
node-version: 20
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 10
- uses: actions/setup-node@v4
with:
node-version: 20
Expand Down
20 changes: 13 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,22 +1,28 @@
# compiled output
/dist/
/dist-tests/
/declarations/

# dependencies
/node_modules/
# from scenarios
tmp/
config/optional-features.json
ember-cli-build.cjs

# deps & caches
node_modules/
.eslintcache
.prettiercache

# potentially containing secrets
*.local

# misc
/.env*
/.pnp*
/.eslintcache
/coverage/
/npm-debug.log*
/testem.log
/yarn-error.log

# broccoli-debug
/DEBUG/

# IDE
/.idea/
/*.iml
Expand Down
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
auto-install-peers=false
4 changes: 1 addition & 3 deletions .prettierrc.js → .prettierrc.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
'use strict';

module.exports = {
export default {
plugins: ['prettier-plugin-ember-template-tag'],
overrides: [
{
Expand Down
1 change: 1 addition & 0 deletions .stylelintignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@

# compiled output
/dist/
/dist-tests/
File renamed without changes.
5 changes: 0 additions & 5 deletions .template-lintrc.js

This file was deleted.

4 changes: 4 additions & 0 deletions .template-lintrc.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export default {
extends: 'recommended',
checkHbsTemplateLiterals: false,
};
123 changes: 123 additions & 0 deletions .try.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
// When building your addon for older Ember versions you need to have the required files
const compatFiles = {
'ember-cli-build.cjs': `const EmberApp = require('ember-cli/lib/broccoli/ember-app');
const { compatBuild } = require('@embroider/compat');
module.exports = async function (defaults) {
const { buildOnce } = await import('@embroider/vite');
let app = new EmberApp(defaults);
return compatBuild(app, buildOnce);
};`,
'config/optional-features.json': JSON.stringify({
'application-template-wrapper': false,
'default-async-observers': true,
'jquery-integration': false,
'template-only-glimmer-components': true,
'no-implicit-route-model': true,
}),
};

const compatDeps = {
'@embroider/compat': '^4.0.3',
'ember-cli': '^5.12.0',
'ember-auto-import': '^2.10.0',
'@ember/optional-features': '^2.2.0',
};

export default {
packageManager: 'pnpm',
scenarios: [
{
name: 'ember-lts-4.12',
npm: {
devDependencies: {
'ember-source': '~4.12.0',
...compatDeps,
},
},
env: {
ENABLE_COMPAT_BUILD: true,
SKIP_DECLARATIONS: true,
},
files: compatFiles,
},
{
name: 'ember-lts-5.4',
npm: {
devDependencies: {
'ember-source': '~5.4.0',
...compatDeps,
},
},
env: {
ENABLE_COMPAT_BUILD: true,
},
files: compatFiles,
},
{
name: 'ember-lts-5.8',
npm: {
devDependencies: {
'ember-source': '~5.8.0',
...compatDeps,
},
},
env: {
ENABLE_COMPAT_BUILD: true,
},
files: compatFiles,
},
{
name: 'ember-lts-5.12',
npm: {
devDependencies: {
'ember-source': '~5.12.0',
...compatDeps,
},
},
env: {
ENABLE_COMPAT_BUILD: true,
},
files: compatFiles,
},
{
name: 'ember-lts-6.4',
npm: {
devDependencies: {
'ember-source': 'npm:ember-source@~6.4.0',
},
},
},
{
name: 'ember-lts-6.12',
npm: {
devDependencies: {
'ember-source': 'npm:ember-source@~6.12.0',
},
},
},
{
name: 'ember-latest',
npm: {
devDependencies: {
'ember-source': 'npm:ember-source@latest',
},
},
},
{
name: 'ember-beta',
npm: {
devDependencies: {
'ember-source': 'npm:ember-source@beta',
},
},
},
{
name: 'ember-alpha',
npm: {
devDependencies: {
'ember-source': 'npm:ember-source@alpha',
},
},
},
],
};
10 changes: 5 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@
## Running tests

- `pnpm test` – Runs the test suite on the current Ember version
- `pnpm test:ember --server` – Runs the test suite in "watch mode"
- `pnpm test:ember-compatibility` – Runs the test suite against multiple Ember versions

## Running the dummy application
## Running the demo application

- `pnpm start`
- Visit the dummy application at [http://localhost:4200](http://localhost:4200).
- Visit the demo application at [http://localhost:4200](http://localhost:4200).

For more information on using ember-cli, visit [https://cli.emberjs.com/release/](https://cli.emberjs.com/release/).
## Building

- `pnpm build` – Builds the addon for publishing
Loading
Loading