Ice Versions Save

🚀 ice.js: The Progressive App Framework Based On React(基于 React 的渐进式应用框架)

@ice/[email protected]

2 days ago
  • Deprecate generator API of addTargetExport #6861
  • Remove Document runtime in client bundle #6848
  • Reduce server size by remove unnecessary dependencies and runtime #6848
  • Optimize runtime size when dataLoader is not defined #6849 #6864
  • Chore: remove useless code of webpack compiler #6860
  • Optimize runtime size by remove routes config code #6850

@ice/[email protected]

1 month ago
  • Feat: support dynamic import API for different scenario #6831
import { dynamic } from 'ice';

const ComponentA = dynamic(() => import('../components/A'));
const ComponentB = dynamic(() => import('../components/B'));
const ComponentC = dynamic(() => import('../components/C'), { ssr: false });

export default function Home({ show }) {
  return (
    <>
      {/* load immediately, but in a separate client bundle */}
      <ComponentA />
      {/* load only the show is true */}
      {show && <ComponentB />}
      {/* load only on the client side */}
      <ComponentC />
    </>
  );
}

Kudos to @HomyeeKing .

  • Feat: support props for KeepAliveOutlet #6819
import { KeepAliveOutlet } from 'ice';

export default function Layout() {
  return (
    <div>
      <h2>Layout</h2>
      {/* limit is the limitation number of outlets to keep alive. */}
      {/* when paths is configured, only the specified paths will be kept alive. */}
      <KeepAliveOutlet limit={2} paths={['/home']} />
    </div>
  );
}

  • Feat: support add plugin by cli option #6829
ice start -- --plugin @ice/plugin-analyze
  • Refactor: use the same compiler when build data-loader ( speedup mode only) #6804
  • Fix: ignore basename in single route mode when route do not match #6833
  • Feat: upgrate pack-binding for new compile feature #6832
  • Fix(rax-compat): export createElement for rax-compat #6814

@ice/[email protected]

1 month ago
  • Fix: improve dev sourcemap in speedup mode #6818
  • Fix: compile error when import env variables in app config #6821
  • Feat: optimize style file injection and support in both webpack and speedup mode #6822
  • Fix: align the order and content of custom transformer in different compile mode #6823

@ice/[email protected]

1 month ago
  • Feat: use postcss plugin to transform unocss #6790
  • Feat: support keepalive without experimental version of react #6768
  • Fix: update rspack version and fix some compile error in runtime #6796
  • Fix: single router is not work when route path is customized #6810

@ice/[email protected]

2 months ago
  • Fix: set enforce post for compilation loader #6752
  • Fix: avoid unexpected slash in route path #6760
  • Fix: update rspack config for version 0.5.1 #6758
  • Fix: do not log warning message when use router api #6731
  • Feat: enhance single router mode without react-router #6761
  • Fix: HMR boundary in speedup mode #6770
  • Fix: export losing ts type #6772
  • Fix: disable persistent cache for unocss generation #6774
  • Feat: update react-router for new feature #6764
  • Fix: css module hash is not match in speedup mode #6777

@ice/[email protected]

2 months ago
  • Feat: refactor plugin-rax-compat including, support option inlineStyle in SSR and inline style for both less and scss
  • Feat: support optimize package import, it reduce compile time if barrel files is imported (only in speedup mode) #6736
  • Fix: register with new defaultTaskConfig evey time #6726 @AlbertXiao1994
  • Fix: server render result is not updated when using on-demand server #6738
  • Fix: can not resolve path of regenerator-runtime #6742
  • Fix: the conflict compile options caused by .swcrc #6746
  • Fix: pass the correct request context to data loader #6747
  • Fix(@ice/plugin-unocss): always add the preset of uno for plugin #6744

@ice/[email protected]

3 months ago
  • Deal with assets when pre bundle third-party dependencies #6688
  • Fix unstable_Offscreen to unstable_Activity for React experiment API changed #6694
  • Optimize compile Rules for build performance #6719
  • Support data loader when use speedup mode #6727
  • Fix build error when disable code splitting #6727
  • Fix pack error when using component of fusion #6727

@ice/[email protected]

3 months ago

Improve the build speed by implement customize Rspack plugins and loaders by Rust. The build speed and HMR has been significantly improved in speedup mode. PR #6680

  • Bump rspack/core to 0.4.3
  • Replace native binding with @ice/pack-binding which is based on Rspack
  • Pre-bundle rspack bundler to override the implementation options

@ice/[email protected]

4 months ago
  • Feat: support plugin of Unocss #6665

    Install @ice/plugin-unocss:

    $ npm install @ice/plugin-unocss --save-dev
    

    Configure it in ice.config.mts:

    import { defineConfig } from '@ice/app';
    import Unocss from '@ice/plugin-unocss';
    
    export default defineConfig(() => ({
      plugins: [
        Unocss(),
      ]
    }));
    

    Plugin has a default preset @unocss/preset-uno for UnoCSS.

  • Feat: add default export of rax-compat #6643

  • Fix: better error handling of build script #6672

  • Chore: remove type exports #6651

@ice/[email protected]

4 months ago

Fix: re-order transform plugins #6649