Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.19 #139

Merged
merged 39 commits into from
Jul 26, 2024
Merged

v0.19 #139

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
96cefdd
version: 0.19-SNAPSHOT
osipxd Apr 18, 2023
5728878
build: infrastructure 0.18.1
osipxd Apr 18, 2023
80d9d17
build: Gradle 8.8
osipxd Jul 5, 2024
b0baf8d
android: Remove SdkConstants usage
osipxd Jul 5, 2024
218cb78
android: Remove the workaround for Explicit API mode enabling
osipxd Jul 5, 2024
2c7646e
android: Update AGP to 8.5.0
osipxd Jul 5, 2024
abfe8e9
android: Stabilize addSharedSourceSetRoot
osipxd Jul 5, 2024
dc9ec80
build: Update Kotlin to 2.0.0
osipxd Jul 5, 2024
9aaafdd
detekt: Update dependencies
osipxd Jul 5, 2024
5656ec9
build: Update plugin-publish-plugin and versions plugin
osipxd Jul 5, 2024
a356e01
samples: Update dependencies
osipxd Jul 8, 2024
4febd34
style: Update .editorconfig
osipxd Jul 8, 2024
a3bb5cd
ci: Update workflows
osipxd Jul 8, 2024
bf9b572
android: Update default targetSdk to 34
osipxd Jul 8, 2024
ed36b32
Merge pull request #137 from RedMadRobot/feature/update-dependencies
osipxd Jul 9, 2024
c214113
common: Disable automatic repositories adding by default
osipxd Jul 9, 2024
b69429f
android: Do not disable disabled build features
osipxd Jul 9, 2024
b7f2ae7
common: Deprecate jvmTarget
osipxd Jul 9, 2024
70b8218
style: Update detekt plugin config
osipxd Jul 9, 2024
937148a
android: Use `ANDROID_BUILD_TOOLS_VERSION` env variable for `buildToo…
osipxd Jul 10, 2024
c5c9107
docs: Update plugins features in README
osipxd Jul 9, 2024
ec22134
android: Make it possible to configure ndkVersion from extension
osipxd Jul 10, 2024
df03edf
android: Remove dependency on InfrastructurePlugin from BaseAndroidPl…
osipxd Jul 10, 2024
16f35c5
kotlin: Remove dependency on InfrastructurePlugin from KotlinLibraryP…
osipxd Jul 10, 2024
390a3f8
publish: Remove dependency on InfrastructurePlugin from PublishPlugin
osipxd Jul 10, 2024
eed0909
Merge pull request #138 from RedMadRobot/feature/cleaning
osipxd Jul 17, 2024
78a3427
docs: Small text fixes
osipxd Jul 23, 2024
076dee7
kotlin: Do not add -opt-in=kotlin.RequiresOptIn as it is not required…
osipxd Jul 23, 2024
3386ddd
android: Make collectProguardFiles public
osipxd Jul 24, 2024
d03b861
android: Remove default values from `minSdk` and `targetSdk`
osipxd Jul 24, 2024
f483e8a
kotlin: Remove allWarningsAsErrors enabling
osipxd Jul 24, 2024
e75ee7a
android: Add SigningConfig.fromProperties function
osipxd Jul 24, 2024
2f3fc00
android: Remove dependency on android-cache-fix-gradle-plugin
osipxd Jul 24, 2024
98ad534
android: AGP 8.5.1
osipxd Jul 24, 2024
729850d
build: Gradle 8.9
osipxd Jul 24, 2024
f49955a
Merge pull request #140 from RedMadRobot/feature/cleaning
osipxd Jul 25, 2024
b695908
build: Update publishing
osipxd Jul 26, 2024
2281ac0
ci: Add release workflow
osipxd Jul 26, 2024
e1e36be
version: 0.19
osipxd Jul 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
187 changes: 117 additions & 70 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# Source: https://gist.github.com/osipxd/9a786496634a1ef0ea622c9805601490
root = true

[*]
Expand All @@ -10,136 +11,153 @@ trim_trailing_whitespace = true
max_line_length = 120
ij_visual_guides = 100

## General
# General
ij_continuation_indent_size = 8
ij_smart_tabs = false
ij_wrap_on_typing = false
ij_any_keep_indents_on_empty_lines = false

## Formatter Control
# Formatter
ij_formatter_tags_enabled = true
ij_formatter_on_tag = @formatter:on
ij_formatter_off_tag = @formatter:off

[{*.kt, *.kts}]
ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL
ij_continuation_indent_size = 4 # To match ktlint settings
ij_kotlin_keep_indents_on_empty_lines = false
[{*.kt,*.kts}]
# Tabs and Indents
# continuation_indent_size = 4 to match ktlint settings
ij_kotlin_continuation_indent_size = 4
ij_kotlin_keep_indents_on_empty_lines = unset

# Spaces
## Before parentheses
ij_kotlin_space_before_if_parentheses = true
ij_kotlin_space_before_for_parentheses = true
ij_kotlin_space_before_while_parentheses = true
ij_kotlin_space_before_catch_parentheses = true
ij_kotlin_space_before_when_parentheses = true
## Around operators
ij_kotlin_spaces_around_assignment_operators = true
ij_kotlin_spaces_around_logical_operators = true
ij_kotlin_spaces_around_equality_operators = true
ij_kotlin_spaces_around_relational_operators = true
ij_kotlin_spaces_around_additive_operators = true
ij_kotlin_spaces_around_multiplicative_operators = true
ij_kotlin_spaces_around_unary_operator = false
ij_kotlin_spaces_around_range = false
## Other
ij_kotlin_space_before_comma = false
ij_kotlin_space_after_comma = true
ij_kotlin_space_before_type_colon = false
ij_kotlin_space_after_type_colon = true
ij_kotlin_space_before_extend_colon = true
ij_kotlin_space_after_extend_colon = true
ij_kotlin_insert_whitespaces_in_simple_one_line_method = true
ij_kotlin_spaces_around_function_type_arrow = true
ij_kotlin_spaces_around_when_arrow = true
ij_kotlin_space_before_lambda_arrow = true

## Wrapping and Braces
# Keep when reformatting
# Wrapping and Braces
## Keep when reformatting
ij_kotlin_keep_line_breaks = true
ij_kotlin_keep_first_column_comment = true
# Extends/implements list
## Extends/implements list
ij_kotlin_extends_list_wrap = normal
ij_kotlin_align_multiline_extends_list = false
ij_kotlin_continuation_indent_in_supertype_lists = false
# Function declaration parameters
## Function declaration parameters
ij_kotlin_method_parameters_wrap = on_every_item
ij_kotlin_align_multiline_parameters = true
ij_kotlin_method_parameters_new_line_after_left_paren = true
ij_kotlin_method_parameters_right_paren_on_new_line = true
ij_kotlin_continuation_indent_in_parameter_lists = false
# Function call arguments
## Function call arguments
ij_kotlin_call_parameters_wrap = on_every_item
ij_kotlin_align_multiline_parameters_in_calls = false
ij_kotlin_call_parameters_new_line_after_left_paren = true
ij_kotlin_call_parameters_right_paren_on_new_line = true
ij_kotlin_continuation_indent_in_argument_lists = false
# Function parentheses
## Function parentheses
ij_kotlin_align_multiline_method_parentheses = false
# Chained function calls
## Chained function calls
ij_kotlin_method_call_chain_wrap = normal
ij_kotlin_wrap_first_method_in_call_chain = false
ij_kotlin_continuation_indent_for_chained_calls = false
# 'if()' statement
## 'if()' statement
ij_kotlin_else_on_new_line = false
ij_kotlin_if_rparen_on_new_line = true
ij_kotlin_continuation_indent_in_if_conditions = false
# 'do ... while()' statement
## 'do ... while()' statement
ij_kotlin_while_on_new_line = false
# 'try' statement
## 'try' statement
ij_kotlin_catch_on_new_line = false
ij_kotlin_finally_on_new_line = false
# Binary expressions
## Binary expressions
ij_kotlin_align_multiline_binary_operation = false
# Wraps
## Wraps
ij_kotlin_assignment_wrap = normal
ij_kotlin_enum_constants_wrap = off
ij_kotlin_class_annotation_wrap = split_into_lines
ij_kotlin_method_annotation_wrap = split_into_lines
ij_kotlin_field_annotation_wrap = split_into_lines
ij_kotlin_parameter_annotation_wrap = off
ij_kotlin_variable_annotation_wrap = off
# 'when' statements
## 'when' statements
ij_kotlin_align_in_columns_case_branch = false
# Braces placement
ij_kotlin_line_break_after_multiline_when_entry = true
## Braces placement
ij_kotlin_lbrace_on_next_line = false
# Expression body functions
## Expression body functions
ij_kotlin_wrap_expression_body_functions = 1
ij_kotlin_continuation_indent_for_expression_bodies = false
# Elvis expressions
## Elvis expressions
ij_kotlin_wrap_elvis_expressions = 1
ij_kotlin_continuation_indent_in_elvis = false

## Spaces
# Before Parentheses
ij_kotlin_space_before_if_parentheses = true
ij_kotlin_space_before_for_parentheses = true
ij_kotlin_space_before_while_parentheses = true
ij_kotlin_space_before_catch_parentheses = true
ij_kotlin_space_before_when_parentheses = true
# Around Operators
ij_kotlin_spaces_around_assignment_operators = true
ij_kotlin_spaces_around_logical_operators = true
ij_kotlin_spaces_around_equality_operators = true
ij_kotlin_spaces_around_relational_operators = true
ij_kotlin_spaces_around_additive_operators = true
ij_kotlin_spaces_around_multiplicative_operators = true
ij_kotlin_spaces_around_unary_operator = false
ij_kotlin_spaces_around_range = false
# Other
ij_kotlin_space_before_comma = false
ij_kotlin_space_after_comma = true
ij_kotlin_space_before_type_colon = false
ij_kotlin_space_after_type_colon = true
ij_kotlin_space_after_extend_colon = true
ij_kotlin_space_before_extend_colon = true
ij_kotlin_insert_whitespaces_in_simple_one_line_method = true
ij_kotlin_spaces_around_function_type_arrow = true
ij_kotlin_spaces_around_when_arrow = true
ij_kotlin_space_before_lambda_arrow = true

## Blank Lines
# Keep Maximum Blank Lines
# Blank Lines
## Keep maximum blank lines
ij_kotlin_keep_blank_lines_in_declarations = 1
ij_kotlin_keep_blank_lines_in_code = 1
ij_kotlin_keep_blank_lines_before_right_brace = 0
# Minimum Blank Lines
## Minimum blank lines
ij_kotlin_blank_lines_after_class_header = 0
ij_kotlin_blank_lines_around_block_when_branches = 1
ij_kotlin_blank_lines_before_declaration_with_comment_or_annotation_on_separate_line = 1

## Imports
# Imports
ij_kotlin_name_count_to_use_star_import = 5
ij_kotlin_name_count_to_use_star_import_for_members = 3
ij_kotlin_import_nested_classes = false
ij_kotlin_packages_to_use_import_on_demand = java.util.*, kotlinx.android.synthetic.**, io.ktor.**
ij_kotlin_imports_layout = *, java.**, javax.**, kotlin.**, ^
ij_kotlin_packages_to_use_import_on_demand = java.util.*,kotlinx.android.synthetic.**,io.ktor.**
ij_kotlin_imports_layout = *,java.**,javax.**,kotlin.**,^

## Other
# Other
## Trailing comma
ij_kotlin_allow_trailing_comma = true
ij_kotlin_allow_trailing_comma_on_call_site = true
ij_kotlin_allow_trailing_comma_on_call_site = false

## Code generation
# Code generation
## Comment code
ij_kotlin_line_comment_at_first_column = true
ij_kotlin_line_comment_add_space = false
ij_kotlin_line_comment_add_space_on_reformat = false
ij_kotlin_block_comment_at_first_column = true
ij_kotlin_block_comment_add_space = false

[**/res/**.xml]
ij_continuation_indent_size = 4
# Load/Save
ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL

## Other
[*.kts]
# Always use wildcard imports in scripts
ij_kotlin_name_count_to_use_star_import = 2

# EditorConfig can not set some of XML code style options.
# Remember to set default Android XML code style: Editor > Code Style > XML > Set from... -> Android
[{**/res/**.xml,**/AndroidManifest.xml}]
# Tabs and Indents
ij_xml_continuation_indent_size = 4
ij_xml_keep_indents_on_empty_lines = unset

# Other
ij_xml_keep_line_breaks = false
ij_xml_keep_line_breaks_in_text = true
ij_xml_keep_blank_lines = 2
Expand All @@ -148,31 +166,60 @@ ij_xml_text_wrap = normal
ij_xml_align_text = false
ij_xml_align_attributes = false
ij_xml_keep_whitespaces = false
# Spaces
## Spaces
ij_xml_space_around_equals_in_attribute = false
ij_xml_space_after_tag_name = false
ij_xml_space_inside_empty_tag = true
# CDATA
## CDATA
ij_xml_keep_whitespaces_around_cdata = preserve
ij_xml_keep_whitespaces_inside_cdata = false

## Code Generation
# Code Generation
ij_xml_line_comment_at_first_column = true
ij_xml_block_comment_at_first_column = true
ij_xml_block_comment_add_space = false

## Android
# Android
ij_xml_use_custom_settings = true

[*.md]
trim_trailing_whitespace = false

[{*.yaml, *.yml}]
# Wrapping and Braces
ij_markdown_wrap_text_if_long = false
ij_markdown_wrap_text_inside_blockquotes = false
## When reformatting
ij_markdown_keep_line_breaks_inside_text_blocks = true
ij_markdown_insert_quote_arrows_on_wrap = true
ij_markdown_format_tables = true

# Tabs and Indents
ij_markdown_keep_indents_on_empty_lines = unset

# Blank Lines
## Keep maximum blank lines
ij_markdown_max_lines_around_header = 1
ij_markdown_max_lines_around_block_elements = 1
ij_markdown_max_lines_between_paragraphs = 1
## Minimum blank lines
ij_markdown_min_lines_around_header = 1
ij_markdown_min_lines_around_block_elements = 1
ij_markdown_min_lines_between_paragraphs = 1

# Spaces
## Force one space
ij_markdown_force_one_space_between_words = true
ij_markdown_force_one_space_after_header_symbol = true
ij_markdown_force_one_space_after_list_bullet = true
ij_markdown_force_one_space_after_blockquote_symbol = true

[{*.yaml,*.yml}]
indent_size = 2
ij_yaml_spaces_within_brackets = false
ij_yaml_keep_indents_on_empty_lines = false
ij_yaml_keep_indents_on_empty_lines = unset
ij_yaml_keep_line_breaks = true
ij_yaml_spaces_within_brackets = false

[{*.bash, *.sh, *.zsh}]
[{*.bash,*.sh,*.zsh}]
indent_size = 2
tab_width = 2

Expand Down
49 changes: 24 additions & 25 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,19 @@ jobs:

steps:
- name: Checkout sources
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3

- name: Run Check
uses: eskatos/gradle-command-action@v2
with:
arguments: detektMainAll check
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
run: ./gradlew detektMainAll check

publish:
name: Publish
Expand All @@ -35,19 +35,19 @@ jobs:

steps:
- name: Checkout sources
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3

- name: Run Publish
uses: eskatos/gradle-command-action@v2
with:
arguments: publishAllPublicationsToGithubPackagesRepository
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
run: ./gradlew publishAllPublicationsToGithubPackagesRepository
env:
ORG_GRADLE_PROJECT_githubPackagesUsername: ${{ github.actor }}
ORG_GRADLE_PROJECT_githubPackagesPassword: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -63,22 +63,21 @@ jobs:

steps:
- name: Checkout sources
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3

- name: Run Publish
uses: eskatos/gradle-command-action@v2
with:
arguments: publishToMavenLocal
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
run: ./gradlew publishToMavenLocal

- name: Run Build
uses: eskatos/gradle-command-action@v2
with:
arguments: build
build-root-directory: samples/${{ matrix.sample }}
run: |
cd samples/${{ matrix.sample }}
./gradlew build
Loading
Loading