@atlaspack/feature-flags 2.14.1-dev.144 → 2.14.1-dev.146

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,56 @@
1
1
  # @atlaspack/feature-flags
2
2
 
3
+ ## 2.16.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#582](https://github.com/atlassian-labs/atlaspack/pull/582) [`f4da1e1`](https://github.com/atlassian-labs/atlaspack/commit/f4da1e120e73eeb5e8b8927f05e88f04d6148c7b) Thanks [@matt-koko](https://github.com/matt-koko)! - Export DEFAULT_FEATURE_FLAGS so it will be included in the associate type declaration file and able to be imported elsewhere.
8
+
9
+ This will enable patterns like:
10
+
11
+ ```
12
+ import type { FeatureFlags } from '@atlaspack/feature-flags';
13
+ import { DEFAULT_FEATURE_FLAGS } from '@atlaspack/feature-flags';
14
+ ```
15
+
16
+ ### Patch Changes
17
+
18
+ - [#503](https://github.com/atlassian-labs/atlaspack/pull/503) [`209692f`](https://github.com/atlassian-labs/atlaspack/commit/209692ffb11eae103a0d65c5e1118a5aa1625818) Thanks [@JakeLane](https://github.com/JakeLane)! - Fix conditional bundling reporter when condition is reused
19
+
20
+ ## 2.15.1
21
+
22
+ ### Patch Changes
23
+
24
+ - [#551](https://github.com/atlassian-labs/atlaspack/pull/551) [`30f6017`](https://github.com/atlassian-labs/atlaspack/commit/30f60175ba4d272c5fc193973c63bc298584775b) Thanks [@yamadapc](https://github.com/yamadapc)! - Log request tracker invalidation counts on start-up
25
+
26
+ ## 2.15.0
27
+
28
+ ### Minor Changes
29
+
30
+ - [#547](https://github.com/atlassian-labs/atlaspack/pull/547) [`a1773d2`](https://github.com/atlassian-labs/atlaspack/commit/a1773d2a62d0ef7805ac7524621dcabcc1afe929) Thanks [@benjervis](https://github.com/benjervis)! - Add a feature flag for resolving the configuration for `@atlaspack/bundler-default` from CWD, rather than exclusively from the project root.
31
+
32
+ ## 2.14.4
33
+
34
+ ### Patch Changes
35
+
36
+ - [#542](https://github.com/atlassian-labs/atlaspack/pull/542) [`e0f5337`](https://github.com/atlassian-labs/atlaspack/commit/e0f533757bd1019dbd108a04952c87da15286e09) Thanks [@yamadapc](https://github.com/yamadapc)! - Add feature-flagged option to use rayon thread-pool to optimize inline requires
37
+
38
+ ## 2.14.3
39
+
40
+ ### Patch Changes
41
+
42
+ - [#511](https://github.com/atlassian-labs/atlaspack/pull/511) [`11d6f16`](https://github.com/atlassian-labs/atlaspack/commit/11d6f16b6397dee2f217167e5c98b39edb63f7a7) Thanks [@yamadapc](https://github.com/yamadapc)! - Clean-up dylib worker threads segmentation fault bug fix feature-flag
43
+
44
+ ## 2.14.2
45
+
46
+ ### Patch Changes
47
+
48
+ - [#494](https://github.com/atlassian-labs/atlaspack/pull/494) [`9b85d3e`](https://github.com/atlassian-labs/atlaspack/commit/9b85d3e645b10bd027eed2304afc970a5ba40062) Thanks [@JakeLane](https://github.com/JakeLane)! - When conditionalBundlingReporterDuplicateFix is enabled, avoid duplicated writes to the descriptor and logging
49
+
50
+ - [#510](https://github.com/atlassian-labs/atlaspack/pull/510) [`17b9579`](https://github.com/atlassian-labs/atlaspack/commit/17b9579484eced0ed8f23e2aba6d23b3c7238c39) Thanks [@yamadapc](https://github.com/yamadapc)! - Add unused feature-flag for cache rework changes
51
+
52
+ - [#512](https://github.com/atlassian-labs/atlaspack/pull/512) [`8f4e6c1`](https://github.com/atlassian-labs/atlaspack/commit/8f4e6c1b0e7c1fd48624afda48c1dcc599f1460f) Thanks [@yamadapc](https://github.com/yamadapc)! - Remove LMDB cache back-end
53
+
3
54
  ## 2.14.1
4
55
 
5
56
  ### Patch Changes
package/lib/index.js CHANGED
@@ -17,18 +17,24 @@ const DEFAULT_FEATURE_FLAGS = exports.DEFAULT_FEATURE_FLAGS = {
17
17
  useWatchmanWatcher: false,
18
18
  importRetry: false,
19
19
  fixQuadraticCacheInvalidation: 'OLD',
20
- useLmdbJsLite: true,
21
20
  conditionalBundlingApi: false,
21
+ inlineRequiresMultiThreading: false,
22
22
  vcsMode: 'OLD',
23
23
  loadableSideEffects: false,
24
24
  reduceResolverStringCreation: false,
25
25
  inlineBundlesSourceMapFixes: false,
26
26
  conditionalBundlingNestedRuntime: false,
27
27
  patchProjectPaths: false,
28
- enableRustWorkerThreadDylibHack: true,
28
+ cachePerformanceImprovements: process.env.NODE_ENV === 'test',
29
+ environmentDeduplication: false,
30
+ granularTsConfigInvalidation: false,
29
31
  inlineStringReplacementPerf: false,
30
32
  conditionalBundlingAsyncRuntime: false,
31
- conditionalBundlingReporterDuplicateFix: false
33
+ // Default to true as it's a monitoring change. Can be turned off if necessary.
34
+ verboseRequestInvalidationStats: true,
35
+ conditionalBundlingReporterDuplicateFix: false,
36
+ resolveBundlerConfigFromCwd: false,
37
+ conditionalBundlingReporterSameConditionFix: false
32
38
  };
33
39
  let featureFlagValues = {
34
40
  ...DEFAULT_FEATURE_FLAGS
package/lib/types.d.ts CHANGED
@@ -18,11 +18,6 @@ export type FeatureFlags = {
18
18
  */
19
19
  importRetry: boolean;
20
20
 
21
- /**
22
- * Enable Rust based LMDB wrapper library
23
- */
24
- useLmdbJsLite: boolean;
25
-
26
21
  /**
27
22
  * Fixes quadratic cache invalidation issue
28
23
  */
@@ -35,6 +30,11 @@ export type FeatureFlags = {
35
30
  */
36
31
  conditionalBundlingApi: boolean;
37
32
 
33
+ /**
34
+ * Run inline requires optimizer in the rayon thread pool.
35
+ */
36
+ inlineRequiresMultiThreading: boolean;
37
+
38
38
  /**
39
39
  * Enable VCS mode. Expected values are:
40
40
  * - OLD - default value, return watchman result
@@ -43,6 +43,24 @@ export type FeatureFlags = {
43
43
  */
44
44
  vcsMode: ConsistencyCheckFeatureFlagValue;
45
45
 
46
+ /**
47
+ * Enable granular TS config invalidation
48
+ */
49
+ granularTsConfigInvalidation: boolean;
50
+
51
+ /**
52
+ * Refactor cache to:
53
+ * - Split writes into multiple entries
54
+ * - Remove "large file blob" writes
55
+ * - Reduce size of the caches by deduplicating data
56
+ */
57
+ cachePerformanceImprovements: boolean;
58
+
59
+ /**
60
+ * Deduplicates environments across cache / memory entities
61
+ */
62
+ environmentDeduplication: boolean;
63
+
46
64
  /**
47
65
  * Enable scanning for the presence of loadable to determine side effects
48
66
  */
@@ -54,6 +72,11 @@ export type FeatureFlags = {
54
72
  */
55
73
  reduceResolverStringCreation: boolean;
56
74
 
75
+ /**
76
+ * Add verbose metrics for request tracker invalidation
77
+ */
78
+ verboseRequestInvalidationStats: boolean;
79
+
57
80
  /**
58
81
  * Fixes source maps for inline bundles
59
82
  */
@@ -69,11 +92,6 @@ export type FeatureFlags = {
69
92
  */
70
93
  patchProjectPaths: boolean;
71
94
 
72
- /**
73
- * Enable loading of the parcel dylib in the main thread.
74
- */
75
- enableRustWorkerThreadDylibHack: boolean;
76
-
77
95
  /**
78
96
  * Enables optimized inline string replacement perf for the packager.
79
97
  * Used heavily for inline bundles.
@@ -89,5 +107,16 @@ export type FeatureFlags = {
89
107
  * Fix a bug where the conditional manifest reporter would report and write the same manifest multiple times
90
108
  */
91
109
  conditionalBundlingReporterDuplicateFix: boolean;
110
+
111
+ /**
112
+ * Enable resolution of bundler config starting from the CWD
113
+ */
114
+ resolveBundlerConfigFromCwd: boolean;
115
+
116
+ /**
117
+ * Fix a bug where the conditional manifest reporter would drop bundles that have the same condition
118
+ */
119
+ conditionalBundlingReporterSameConditionFix: boolean;
92
120
  };
93
121
  export type ConsistencyCheckFeatureFlagValue = "NEW" | "OLD" | "NEW_AND_CHECK" | "OLD_AND_CHECK";
122
+ export declare var DEFAULT_FEATURE_FLAGS: FeatureFlags;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaspack/feature-flags",
3
- "version": "2.14.1-dev.144+ea7d58b70",
3
+ "version": "2.14.1-dev.146+33cba81e9",
4
4
  "description": "Provides internal feature-flags for the atlaspack codebase.",
5
5
  "license": "(MIT OR Apache-2.0)",
6
6
  "publishConfig": {
@@ -21,5 +21,5 @@
21
21
  "node": ">= 16.0.0"
22
22
  },
23
23
  "type": "commonjs",
24
- "gitHead": "ea7d58b70fbe4bbc6324d4053ac673ea307b7bf6"
24
+ "gitHead": "33cba81e98b6eb098014f5a19d7932821b95f075"
25
25
  }
package/src/index.js CHANGED
@@ -12,18 +12,24 @@ export const DEFAULT_FEATURE_FLAGS: FeatureFlags = {
12
12
  useWatchmanWatcher: false,
13
13
  importRetry: false,
14
14
  fixQuadraticCacheInvalidation: 'OLD',
15
- useLmdbJsLite: true,
16
15
  conditionalBundlingApi: false,
16
+ inlineRequiresMultiThreading: false,
17
17
  vcsMode: 'OLD',
18
18
  loadableSideEffects: false,
19
19
  reduceResolverStringCreation: false,
20
20
  inlineBundlesSourceMapFixes: false,
21
21
  conditionalBundlingNestedRuntime: false,
22
22
  patchProjectPaths: false,
23
- enableRustWorkerThreadDylibHack: true,
23
+ cachePerformanceImprovements: process.env.NODE_ENV === 'test',
24
+ environmentDeduplication: false,
25
+ granularTsConfigInvalidation: false,
24
26
  inlineStringReplacementPerf: false,
25
27
  conditionalBundlingAsyncRuntime: false,
28
+ // Default to true as it's a monitoring change. Can be turned off if necessary.
29
+ verboseRequestInvalidationStats: true,
26
30
  conditionalBundlingReporterDuplicateFix: false,
31
+ resolveBundlerConfigFromCwd: false,
32
+ conditionalBundlingReporterSameConditionFix: false,
27
33
  };
28
34
 
29
35
  let featureFlagValues: FeatureFlags = {...DEFAULT_FEATURE_FLAGS};
package/src/types.js CHANGED
@@ -16,10 +16,6 @@ export type FeatureFlags = {|
16
16
  * Configure runtime to enable retriable dynamic imports
17
17
  */
18
18
  importRetry: boolean,
19
- /**
20
- * Enable Rust based LMDB wrapper library
21
- */
22
- useLmdbJsLite: boolean,
23
19
  /**
24
20
  * Fixes quadratic cache invalidation issue
25
21
  */
@@ -30,6 +26,10 @@ export type FeatureFlags = {|
30
26
  * and requires server-side support.
31
27
  */
32
28
  conditionalBundlingApi: boolean,
29
+ /**
30
+ * Run inline requires optimizer in the rayon thread pool.
31
+ */
32
+ inlineRequiresMultiThreading: boolean,
33
33
  /**
34
34
  * Enable VCS mode. Expected values are:
35
35
  * - OLD - default value, return watchman result
@@ -37,6 +37,21 @@ export type FeatureFlags = {|
37
37
  * - NEW: Return VCS result, but don't call watchman
38
38
  */
39
39
  vcsMode: ConsistencyCheckFeatureFlagValue,
40
+ /**
41
+ * Enable granular TS config invalidation
42
+ */
43
+ granularTsConfigInvalidation: boolean,
44
+ /**
45
+ * Refactor cache to:
46
+ * - Split writes into multiple entries
47
+ * - Remove "large file blob" writes
48
+ * - Reduce size of the caches by deduplicating data
49
+ */
50
+ cachePerformanceImprovements: boolean,
51
+ /**
52
+ * Deduplicates environments across cache / memory entities
53
+ */
54
+ environmentDeduplication: boolean,
40
55
  /**
41
56
  * Enable scanning for the presence of loadable to determine side effects
42
57
  */
@@ -46,6 +61,10 @@ export type FeatureFlags = {|
46
61
  * conversions
47
62
  */
48
63
  reduceResolverStringCreation: boolean,
64
+ /**
65
+ * Add verbose metrics for request tracker invalidation
66
+ */
67
+ verboseRequestInvalidationStats: boolean,
49
68
  /**
50
69
  * Fixes source maps for inline bundles
51
70
  */
@@ -58,10 +77,6 @@ export type FeatureFlags = {|
58
77
  * This feature is experimental and should not be used in production. It will used to test downloadble cache artefacts.
59
78
  */
60
79
  patchProjectPaths: boolean,
61
- /**
62
- * Enable loading of the parcel dylib in the main thread.
63
- */
64
- enableRustWorkerThreadDylibHack: boolean,
65
80
  /**
66
81
  * Enables optimized inline string replacement perf for the packager.
67
82
  * Used heavily for inline bundles.
@@ -75,6 +90,14 @@ export type FeatureFlags = {|
75
90
  * Fix a bug where the conditional manifest reporter would report and write the same manifest multiple times
76
91
  */
77
92
  conditionalBundlingReporterDuplicateFix: boolean,
93
+ /**
94
+ * Enable resolution of bundler config starting from the CWD
95
+ */
96
+ resolveBundlerConfigFromCwd: boolean,
97
+ /**
98
+ * Fix a bug where the conditional manifest reporter would drop bundles that have the same condition
99
+ */
100
+ conditionalBundlingReporterSameConditionFix: boolean,
78
101
  |};
79
102
 
80
103
  export type ConsistencyCheckFeatureFlagValue =
@@ -82,3 +105,5 @@ export type ConsistencyCheckFeatureFlagValue =
82
105
  | 'OLD'
83
106
  | 'NEW_AND_CHECK'
84
107
  | 'OLD_AND_CHECK';
108
+
109
+ declare export var DEFAULT_FEATURE_FLAGS: FeatureFlags;