Skip to content

Commit

Permalink
refactor(deno): remove deno from codebase (#3067)
Browse files Browse the repository at this point in the history
remove deno from the codebase. narrow environment variables
to only account for a Node-based environment

an adr is included in this commit to justify the removal of deno
from the codebase
  • Loading branch information
rwaskiewicz committed Sep 28, 2021
1 parent 66d0476 commit 037b228
Show file tree
Hide file tree
Showing 92 changed files with 47 additions and 13,576 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ coverage/

/build/
/scripts/build/
!/scripts/build/deno-cache
dist/

# submodule packages
Expand Down
20 changes: 0 additions & 20 deletions bin/cli.ts

This file was deleted.

3 changes: 2 additions & 1 deletion docs/adr/0010-deno-vendoring.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Date: 2021-08-24

## Status

accepted
deprecated - see [0013-deno-removal.md](./0013-deno-removal.md)

## Context

Expand Down Expand Up @@ -66,4 +66,5 @@ experimental feature, we accept that risk.

## Links

- Document that supersedes this one: [0013-deno-removal.md](./0013-deno-removal.md)
- PR introducing this change: [fix(ci): vendor deno for builds #3020](https://github.com/ionic-team/stencil/pull/3020)
37 changes: 37 additions & 0 deletions docs/adr/0013-deno-removal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# 13. deno-removal

Date: 2021.09.16

## Status

accepted

## Context

Deno support in Stencil has always been marked as 'experimental'. Throughout the feature's lifespan, the current team
has run into some form of issue or another. For a concrete example of such an issue, see
[0010-deno-vendoring.md](./0010-deno-vendoring.md).

The Stencil team revisited the capability and value associated with this functionality. The feature did not work in
the latest version of Stencil, and the team has not been able to get any positive signal that this functionality is
being used.

## Decision

Deno shall be removed from the Stencil codebase. However, the `sys` interface shall remain.

Deno shall be removed from the Stencil site as a downloadable executable, and marked as having reached end of life.

## Consequences

The codebase may become easier to maintain.

It is possible the PR in which Deno is removed may leave behind artifacts from the Deno implementation. This includes,
but is not limited to:
- Implementation details that are a result of the system handling both the node and Deno runtimes
- Subtle breakages in the codebase in the event of global entities being mutated at build/runtime

## Links

- [0010-deno-vendoring.md](./0010-deno-vendoring.md)
- [Deno End of Life PR](https://github.com/ionic-team/stencil-site/pull/764)
1 change: 1 addition & 0 deletions docs/adr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@
* [10. deno-vendoring](0010-deno-vendoring.md)
* [11. karma-testing-constraints](0011-karma-testing-constraints.md)
* [12. output-markdown-format](0012-output-markdown-format.md)
* [13. deno-removal](0013-deno-removal.md)
3 changes: 0 additions & 3 deletions scripts/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import { internal } from './bundles/internal';
import { mockDoc } from './bundles/mock-doc';
import { release } from './release';
import { screenshot } from './bundles/screenshot';
import { sysDeno } from './bundles/sys-deno';
import { sysNode, sysNodeExternalBundles } from './bundles/sys-node';
import { testing } from './bundles/testing';
import { validateBuild } from './test/validate-build';
Expand Down Expand Up @@ -52,7 +51,6 @@ export async function createBuild(opts: BuildOptions): Promise<readonly RollupOp
emptyDir(opts.output.devServerDir),
emptyDir(opts.output.internalDir),
emptyDir(opts.output.mockDocDir),
emptyDir(opts.output.sysDenoDir),
emptyDir(opts.output.sysNodeDir),
emptyDir(opts.output.testingDir),
updateDependenciesJson(opts),
Expand All @@ -68,7 +66,6 @@ export async function createBuild(opts: BuildOptions): Promise<readonly RollupOp
mockDoc(opts),
screenshot(opts),
testing(opts),
sysDeno(opts),
sysNode(opts),
]);

Expand Down
15 changes: 0 additions & 15 deletions scripts/build/deno-cache/deno_land_std_0_63_0__util_assert_ts.ts

This file was deleted.

This file was deleted.

106 changes: 0 additions & 106 deletions scripts/build/deno-cache/deno_land_std_0_63_0_encoding_hex_ts.ts

This file was deleted.

Loading

0 comments on commit 037b228

Please sign in to comment.