pbxProject hasFile returns false for existing file on Windows
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 45/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- javascript
- Lĩnh vực
- mobile-dev
Hướng nghiên cứu
Bắt đầu với lệnh gọi project.hasFile đối với project.pbxproj được tham chiếu và tái hiện nó bằng ví dụ đa nền tảng được liên kết trên Windows, Linux và macOS. Theo dõi cách SPLASH_SCREEN_PATH được định dạng cho Windows được kiểm tra, và coi issue là hoàn tất khi phát hiện một tệp hiện có trên Windows mà không làm hỏng các nền tảng khác.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
We are running into an issue with this in our Expo CLI on Windows. After some investigation, it looks like there are some issues with Posix and Windows paths when detecting if files exists or not.
I created a repository with an example running on Ubuntu, MacOS and Windows that demonstrates this issue. The scenario it's testing is fairly simple:
const PBX_PROJECT_PATH = path.resolve('ios', 'testios2.xcodeproj', 'project.pbxproj');
const SPLASH_SCREEN_PATH = path.join('testios2', 'SplashScreen.storyboard');
// Create a new pbx project instance
const project = xcode.project(PBX_PROJECT_PATH);
// Now parse the project
project.parseSync();
// Determine if "SplashScreen.storyboard" exists
const file = project.hasFile(SPLASH_SCREEN_PATH);
You see that this is done successfully on both Linux and MacOS, but fails on Windows.
There is a workaround, you have to force the SPLASH_SCREEN_PATH to always be a posix formatted path. That works on Linux, MacOS, and Windows.
const SPLASH_SCREEN_PATH = path.join('testios2', 'SplashScreen.storyboard')
// Force the path to always be a posix formatted path
.replace(path.sep, path.posix.sep);
- Ngôn ngữ chính
- JavaScript
- Star
- 217
- Fork
- 102
- Merge trung bình
- 2 ngày 9 giờ
- Pull request đã merge (30 ngày)
- 8
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của apache/cordova-node-xcode
-
Add & Improve JSDocs Đang mởenhancement
apache/cordova-node-xcode#171 · 1 người được giao ·
-
🔖 New release Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
apache/cordova-node-xcode#162 · 4 bình luận · 2 reaction ·
-
Install .xcframework Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 28/100
apache/cordova-node-xcode#139 · 2 bình luận ·
-
enhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
apache/cordova-node-xcode#138 · 2 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
apache/cordova-node-xcode#137 · 2 reaction ·
Tất cả issue của apache/cordova-node-xcode
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Theme loads third-party resources on every page (jsdelivr web font, cdnjs Font Awesome) – GDPR Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
docToolchain/docToolchain#1705 ·
-
Timezone select lists one option per character; duplicate "Failed" reason; shared tracker popover id Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
nightscout/nocturne#1414 ·
-
bug v2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
modelcontextprotocol/inspector#2458 · 1 bình luận ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
carbon-design-system/ibm-products#9907 ·