piranha
A tool for refactoring code related to feature flag APIs
파일 탐색기
최종 버전 다운로드 (.zip)- build.yml
- deploy_tree_sitter_playground.yml
- release.yml
- constraint_checker_test.rs
- interpreter_test.rs
- mod.rs
- parser_test.rs
- resolver_test.rs
- constraint_checker.rs
- cursor_utils.rs
- interpreter.rs
- mod.rs
- parser.rs
- resolver.rs
- tree_sitter_adapter.rs
- types.rs
- matches.rs
- mod.rs
- concrete_syntax.pest
- lib.rs
- mod.rs
- Cargo.toml
- README.md
- edges.toml
- rules.toml
- scope_config.toml
- edges.toml
- rules.toml
- scope_config.toml
- edges.toml
- rules.toml
- scope_config.toml
- edges.toml
- rules.toml
- scope_config.toml
- edges.toml
- rules.toml
- scope_config.toml
- scope_config.toml
- edges.toml
- rules.toml
- scope_config.toml
- tag_analysis_test.rs
- analysis.rs
- mod.rs
- README.md
- tag_analysis.rs
- utils.rs
- edges.toml
- rules.toml
- piranha_arguments_test.rs
- rule_graph_validation_test.rs
- rule_test.rs
- scopes_test.rs
- source_code_unit_test.rs
- capture_group_patterns.rs
- default_configs.rs
- edit.rs
- fact.rs
- filter.rs
- language.rs
- matches.rs
- mod.rs
- outgoing_edges.rs
- piranha_arguments.rs
- piranha_output.rs
- rule.rs
- rule_graph.rs
- rule_store.rs
- scopes.rs
- source_code_unit.rs
- mod.rs
- test_piranha_go.rs
- test_piranha_java.rs
- test_piranha_kt.rs
- test_piranha_python.rs
- test_piranha_scala.rs
- test_piranha_scm.rs
- test_piranha_strings.rs
- test_piranha_swift.rs
- test_piranha_thrift.rs
- test_piranha_ts.rs
- test_piranha_tsx.rs
- test_piranha_yaml.rs
- tree_sitter_utilities_test.rs
- utilities_test.rs
- mod.rs
- regex_utilities.rs
- tree_sitter_utilities.rs
- lib.rs
- main.rs
- rules.toml
- sample.go
- sample.go
- rules.toml
- sample.go
- sample.go
- edges.toml
- rules.toml
- file.go
- file.go
- sample.go
- sample.go
- main.go
- file.go
- file.go
- sample.go
- sample.go
- main.go
- edges.toml
- rules.toml
- file.go
- file.go
- sample.go
- sample.go
- main.go
- file.go
- file.go
- sample.go
- sample.go
- main.go
- edges.toml
- rules.toml
- sample.go
- sample.go
- rules.toml
- sample.go
- rules.toml
- sample.go
- rules.toml
- sample.go
- TestClass.java
- TestClass.java
- edges.toml
- rules.toml
- Sample.java
- Sample.java
- Test.java
- Test.java
- rules.toml
- Sample.java
- Sample.java
- rules.toml
- Sample.java
- Sample.java
- rules.toml
- Sample.java
- Sample.java
- TestClass.java
- TestClass.java
- rules.toml
- Config.java
- Config.java
- rules.toml
- FeatureTest.java
- rules.toml
- TestEnum.java
- XPFlagCleanerPositiveCases.java
- TestEnum.java
- XPFlagCleanerPositiveCases.java
- rules.toml
- XPFlagCleanerPositiveCases.java
- TestEnum.java
- XPFlagCleanerPositiveCases.java
- edges.toml
- rules.toml
- ExperimentInterface.java
- ExperimentInterfaceAnnotatedInterface.java
- OtherXPFlagCleanerInterfaceMethod.java
- XPFlagCleanerInterfaceMethod.java
- XPMethodChainCases.java
- ExperimentInterface.java
- ExperimentInterfaceAnnotatedInterface.java
- OtherXPFlagCleanerInterfaceMethod.java
- XPFlagCleanerInterfaceMethod.java
- XPMethodChainCases.java
- edges.toml
- rules.toml
- ExperimentInterface.java
- ExperimentInterfaceAnnotatedInterface.java
- OtherXPFlagCleanerInterfaceMethod.java
- XPFlagCleanerInterfaceMethod.java
- XPMethodChainCases.java
- ExperimentInterface.java
- ExperimentInterfaceAnnotatedInterface.java
- OtherXPFlagCleanerInterfaceMethod.java
- XPFlagCleanerInterfaceMethod.java
- XPMethodChainCases.java
- edges.toml
- rules.toml
- TestClass.java
- TestSubClass.java
- TestClass.java
- TestSubClass.java
- edges.toml
- rules.toml
- TestClass.java
- TestSubClass.java
- TestClass.java
- TestSubClass.java
- Sample.java
- Sample.java
- rules.toml
- Sample.java
- TestClass.java
- TestClass.java
- edges.toml
- rules.toml
- AnotherClass.java
- TestClass.java
- AnotherClass.java
- TestClass.java
- rules.toml
- SomeClass.java
- SomeClass.java
- edges.toml
- rules.toml
- AnotherClass.java
- SomeClass.java
- AnotherClass.java
- SomeClass.java
- edges.toml
- rules.toml
- sample.java
- sample.java
- edges.toml
- rules.toml
- sample.java
- sample.java
- edges.toml
- rules.toml
- Sample.java
- Sample.java
- edges.toml
- rules.toml
- SampleEnum.java
- XPFlagCleanerPositiveCases.java
- Sample.java
- Sample.java
- Sample.java
- edges.toml
- rules.toml
- SomeEnum.java
- SomeOtherClass.java
- SomeClass.java
- SampleEnum.java
- XPFlagCleanerPositiveCases.java
- rules.toml
- Sample.java
- Sample.java
- rules.toml
- .placeholder
- Sample.java
- rules.toml
- Sample.java
- Sample.java
- rules.toml
- Sample.java
- Sample.java
- rules.toml
- TestEnum.kt
- XPFlagCleanerCases.kt
- TestEnum.kt
- XPFlagCleanerCases.kt
- rules.toml
- TestEnum.kt
- XPFlagCleanerCases.kt
- TestEnum.kt
- XPFlagCleanerCases.kt
- edges.toml
- rules.toml
- ExperimentInterface.kt
- ExperimentInterfaceAnnotatedInterface.kt
- OtherXPFlagCleanerInterfaceMethod.kt
- XPFlagCleanerInterfaceMethod.kt
- XPMethodChainCases.kt
- ExperimentInterface.kt
- ExperimentInterfaceAnnotatedInterface.kt
- OtherXPFlagCleanerInterfaceMethod.kt
- XPFlagCleanerInterfaceMethod.kt
- XPMethodChainCases.kt
- edges.toml
- rules.toml
- ExperimentInterface.kt
- ExperimentInterfaceAnnotatedInterface.kt
- OtherXPFlagCleanerInterfaceMethod.kt
- XPFlagCleanerInterfaceMethod.kt
- XPMethodChainCases.kt
- ExperimentInterface.kt
- ExperimentInterfaceAnnotatedInterface.kt
- OtherXPFlagCleanerInterfaceMethod.kt
- XPFlagCleanerInterfaceMethod.kt
- XPMethodChainCases.kt
- edges.toml
- rules.toml
- Sample.kt
- Sample.kt
- edges.toml
- rules.toml
- only_lists.py
- only_lists.py
- rules.toml
- list_as_arg.py
- only_lists.py
- rules.toml
- delete_lines_after_return.rb
- delete_lines_after_return.rb
- rules.toml
- test_empty_if_unless_rules.rb
- test_empty_if_unless_rules.rb
- rules.toml
- test_if_rules_inline.rb
- test_if_rules_with_else_block.rb
- test_if_rules_without_else_block.rb
- test_if_rules_inline.rb
- test_if_rules_with_else_block.rb
- test_if_rules_without_else_block.rb
- rules.toml
- test_if_rules_ternary.rb
- test_if_rules_ternary.rb
- rules.toml
- test_unless_rules_inline.rb
- test_unless_rules_with_else_block.rb
- test_unless_rules_without_else_block.rb
- test_unless_rules_inline.rb
- test_unless_rules_with_else_block.rb
- test_unless_rules_without_else_block.rb
- rules.toml
- boolean_simplify.rb
- boolean_simplify.rb
- rules.toml
- simplify_if_lambda_conditional_statements.rb
- simplify_if_lambda_conditional_statements.rb
- rules.toml
- simplify_if_proc_conditional_statements.rb
- simplify_if_proc_conditional_statements.rb
- rules.toml
- simplify_rspec_block_expressions.rb
- simplify_rspec_block_expressions.rb
- rules.toml
- simplify_unless_lambda_conditional_statements.rb
- simplify_unless_lambda_conditional_statements.rb
- rules.toml
- simplify_unless_proc_conditional_statements.rb
- simplify_unless_proc_conditional_statements.rb
- edges.toml
- rules.toml
- simplify_variable_assigned_flag_check.rb
- simplify_variable_assigned_flag_check.rb
- rules.toml
- Sample.scala
- Sample.scala
- rules.toml
- sample.scm
- sample.scm
- rules.toml
- sample_en.strings
- sample_en.strings
- edges.toml
- rules.toml
- Experiment.swift
- Factory.swift
- SomeProtocols.swift
- Experiment.swift
- Factory.swift
- SomeProtocols.swift
- edges.toml
- rules.toml
- Experiment.swift
- Factory.swift
- SomeProtocols.swift
- Experiment.swift
- Factory.swift
- SomeProtocols.swift
- rules.toml
- SampleClass.swift
- SampleClass.swift
- rules.toml
- Sample.swift
- Sample.swift
- rules.toml
- Sample.swift
- Sample.swift
- rules.toml
- SampleClass.swift
- SampleClass.swift
- rules.toml
- SampleClass.swift
- SampleClass.swift
- edges.toml
- rules.toml
- AdhocVariableInlining.swift
- AdhocVariableInlining.swift
- edges.toml
- rules.toml
- test1.swift
- test2.swift
- test3.swift
- test4.swift
- test5.swift
- test1.swift
- test2.swift
- test3.swift
- test4.swift
- test5.swift
- edges.toml
- rules.toml
- FieldVariableInline.swift
- NonFieldVariableInline.swift
- FieldVariableInline.swift
- NonFieldVariableInline.swift
- edges.toml
- rules.toml
- VariableInlining.swift
- VariableInlining.swift
- rules.toml
- sample.thrift
- sample.thrift
- rules.toml
- sample.tsx
- rules.toml
- sample.tsx
- rules.toml
- sample.tsx
- rules.toml
- sample.ts
- rules.toml
- sample.ts
- rules.toml
- sample.ts
- sample.toml
- rules.toml
- sample.yaml
- sample.yaml
- Cargo.toml
- rules.toml
- SampleClass.java
- TestEnum.java
- rules.toml
- SampleClass.kt
- TestEnum.kt
- SampleClass.java
- rules.toml
- TestEnum.java
- rules.toml
- Sample.swift
- sample.thrift
- edges.toml
- rules.toml
- AnotherClass.java
- SomeClass.java
- edges.toml
- rules.toml
- only_lists.py
- rules.toml
- sample.go
- rules.toml
- Sample.java
- rules.toml
- sample.ts
- rules.toml
- sample.tsx
- find_replace_custom_cleanup_demos.py
- find_replace_demos.py
- match_only_demos.py
- stale_feature_flag_cleanup_demos.py
- stale_feature_flag_cleanup_demos_using_py_api.py
- thrift_demos.py
- go_prebuilt_rules.svg
- java_prebuilt_rules.svg
- kotlin_prebuilt_rules.svg
- piranha_architecture.svg
- build.py
- concrete-syntax.css
- concrete-syntax.js
- index.html.template
- README.md
- __init__.py
- __init__.py
- __init__.py
- sample.scala
- sample.scala
- sample.scala
- sample.scala
- sample.scala
- sample2.scala
- sample.scala
- sample2.scala
- sample.scala
- sample.scala
- sample.java
- sample.scala
- sample2.java
- sample2.scala
- sample3.java
- sample3.scala
- sample.java
- sample.scala
- sample2.java
- sample2.scala
- sample3.java
- sample3.scala
- sample.scala
- sample.scala
- sample.scala
- sample.scala
- __init__.py
- test_spark_upgrade.py
- accessing_execution_plan.py
- calculator_signature_change.py
- execute_piranha.py
- gradient_boost_trees.py
- IDF_model_signature_change.py
- main.py
- query_test_check_answer_change.py
- README.md
- requirements.txt
- sql_new_execution.py
- update_calendar_interval.py
- sample.go
- __main__.py
- pyproject.toml
- test_piranha.py
- .gitignore
- .pre-commit-config.yaml
- build.rs
- Cargo.toml
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- LICENSE
- license_header.txt
- mod.rs
- NOTICE
- polyglot_piranha.pyi
- POLYGLOT_README.md
- pyproject.toml
- README.md
- RELEASING.md
- report.pdf
- rustfmt.toml
- visualize_rules_graph.py
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/uber/piranha
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd piranha
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. 공식 설치 스크립트
쉬움 추천사전 준비물
- Python 3 pip 명령어를 쓰려면 Python이 필요합니다.
pip install polyglot-piranha
PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.
설치 후 새 터미널을 열고, 프로그램의 버전 확인 명령(예: --version)으로 정상 설치됐는지 확인하세요.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
3. Python
쉬움사전 준비물
pip install polyglot-piranha
PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.
에러 메시지 없이 실행되고 터미널에 안내 문구가 출력되면 정상입니다.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
4. Rust
보통사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Rust (rustup) rustup으로 설치하면 cargo도 함께 설치됩니다.
cargo build --release
Rust 프로젝트를 컴파일합니다.
cargo run
빌드 후 바로 실행까지 진행합니다.
cargo build가 에러 없이 끝나면 성공입니다. target/ 폴더에 실행 파일이 생성됩니다.
// repository documentation
Was this content helpful?
(0 ratings)
