fix(cli): add file type check (#38365)

This commit is contained in:
Hugues Pouillot
2025-09-19 15:29:57 +02:00
committed by GitHub
parent 4a32914f00
commit 209d48e9ae
4 changed files with 29 additions and 15 deletions

View File

@@ -1,5 +1,9 @@
# posthog-cli
## 0.4.8
- fix bug where directory ends with a javascript extension
## 0.4.4
- process uploads in batches

24
cli/Cargo.lock generated
View File

@@ -239,9 +239,9 @@ dependencies = [
[[package]]
name = "cc"
version = "1.2.37"
version = "1.2.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44"
checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9"
dependencies = [
"find-msvc-tools",
"shlex",
@@ -618,9 +618,9 @@ dependencies = [
[[package]]
name = "find-msvc-tools"
version = "0.1.1"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d"
checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959"
[[package]]
name = "fnv"
@@ -803,6 +803,12 @@ dependencies = [
"foldhash",
]
[[package]]
name = "hashbrown"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"
[[package]]
name = "heck"
version = "0.5.0"
@@ -1122,12 +1128,12 @@ checksum = "cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb"
[[package]]
name = "indexmap"
version = "2.11.3"
version = "2.11.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92119844f513ffa41556430369ab02c295a3578af21cf945caa3e9e0c2481ac3"
checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5"
dependencies = [
"equivalent",
"hashbrown",
"hashbrown 0.16.0",
]
[[package]]
@@ -1292,7 +1298,7 @@ version = "0.12.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
dependencies = [
"hashbrown",
"hashbrown 0.15.5",
]
[[package]]
@@ -1523,7 +1529,7 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "posthog-cli"
version = "0.4.7"
version = "0.4.8"
dependencies = [
"anyhow",
"clap",

View File

@@ -1,6 +1,6 @@
[package]
name = "posthog-cli"
version = "0.4.7"
version = "0.4.8"
authors = [
"David <david@posthog.com>",
"Olly <oliver@posthog.com>",

View File

@@ -13,7 +13,7 @@ use std::{
path::{Path, PathBuf},
};
use tracing::{debug, info, warn};
use walkdir::WalkDir;
use walkdir::{DirEntry, WalkDir};
use super::constant::{CHUNKID_COMMENT_PREFIX, CHUNKID_PLACEHOLDER, CODE_SNIPPET_TEMPLATE};
@@ -174,7 +174,8 @@ pub fn read_pairs(directory: &PathBuf, ignore_globs: &[String]) -> Result<Vec<So
"Skipping because it matches an ignored glob: {}",
entry_path.display()
);
} else if is_javascript_file(&entry_path) {
continue;
} else if is_javascript_file(&entry) {
info!("Processing file: {}", entry_path.display());
let source = SourceFile::load(&entry_path)?;
let sourcemap_path = get_sourcemap_path(&source)?;
@@ -248,7 +249,10 @@ pub fn guess_sourcemap_path(path: &Path) -> PathBuf {
sourcemap_path
}
fn is_javascript_file(path: &Path) -> bool {
path.extension()
.is_some_and(|ext| ext == "js" || ext == "mjs" || ext == "cjs")
fn is_javascript_file(entry: &DirEntry) -> bool {
entry.file_type().is_file()
&& entry
.path()
.extension()
.is_some_and(|ext| ext == "js" || ext == "mjs" || ext == "cjs")
}