microsoft / microsoft/react-native-windows

Windows codegen isn't run when running codegen for other platforms for new modules

Open
#14,111 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area: Library Template Area: Turbo Modules enhancement New Architecture Workstream: Module Support
Dominant language
C++
Stars
17.3k
Forks
1.2k
Avg merge
1d 13h
Merged PRs (30d)
33

Description

Problem Description

The create-react-native-library base template includes the scripts to automatically run react-native codegen for ios/android as part of its build steps, but it doesn't run react-native codegen-windows.

We should figure out some way of ensuring developers also run windows codegen, so when they change their specs, windows stays in sync with the other platforms.

Steps To Reproduce
  1. Create a new library with the cpp-lib template
  2. Run yarn prepare
Expected Results

RNW codegen is also run

CLI version

15.0.0-alpha.2

Environment
info Fetching system and libraries information...
System:
  OS: Windows 11 10.0.26100
  CPU: (8) x64 Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
  Memory: 6.43 GB / 15.84 GB
Binaries:
  Node:
    version: 18.18.0
    path: C:\Program Files\nodejs\node.EXE
  Yarn:
    version: 3.6.1
    path: C:\Program Files (x86)\Yarn\bin\yarn.CMD
  npm:
    version: 9.8.1
    path: C:\Program Files\nodejs\npm.CMD
  Watchman: Not Found
SDKs:
  Android SDK: Not Found
  Windows SDK:
    AllowDevelopmentWithoutDevLicense: Enabled
    AllowAllTrustedApps: Enabled
    Versions:
      - 10.0.19041.0
      - 10.0.22000.0
      - 10.0.22621.0
IDEs:
  Android Studio: Not Found
  Visual Studio:
    - 17.11.35327.3 (Visual Studio Enterprise 2022)
Languages:
  Java: Not Found
  Ruby: Not Found
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.0-alpha.2
    wanted: 15.0.0-alpha.2
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.0
    wanted: 0.76.0
  react-native-windows:
    installed: 0.76.0
    wanted: 0.76.0
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: Not found
  newArchEnabled: Not found
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found

info React Native v0.76.1 is now available (your project is running on v0.76.0).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.76.1
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.76.0&to=0.76.1
info For more info, check out "https://reactnative.dev/docs/upgrading?os=windows".
Community Modules

No response

Target Platform Version

10.0.22621

Target Device(s)

Desktop

Visual Studio Version

Visual Studio 2022

Build Configuration

Debug

Snack, code example, screenshot, or link to a repository

https://github.com/jonthysell/native-module-sample

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Inspect the create-react-native-library base template used by the cpp-lib template and the scripts invoked by yarn prepare. Compare how react-native codegen runs for iOS and Android with the Windows codegen command. Reproduce the issue with a generated library; done means Windows codegen runs alongside the other platform codegen steps.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, react-native
Domain
build-system, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.