RxReader / tencent_kit

Flutter版QQ登录/分享
MIT License
236 stars 64 forks source link

Enable alias parsing flutter_project_dir and Update Ci #92

Closed lwj1994 closed 1 year ago

lwj1994 commented 1 year ago

fix Alias parsing

cocoapods: stable 1.12.1 (bottled) ruby: stable 3.2.2 (bottled), HEAD [keg-only]

when run pod install:

[!] Failed to load 'tencent_kit' podspec: 
[!] Invalid `tencent_kit.podspec` file: Alias parsing was not enabled. To enable it, pass `aliases: true` to `Psych::load` or `Psych::safe_load`..
droplet-js commented 1 year ago

似乎要考虑到ruby版本兼容问题

lwj1994 commented 1 year ago

似乎要考虑到ruby版本兼容问题

这方面不太了解,就麻烦你看下了,我的版本号:

droplet-js commented 1 year ago

似乎要考虑到ruby版本兼容问题

这方面不太了解,就麻烦你看下了,我的版本号:

  • cocoapods: stable 1.12.1 (bottled)

  • ruby: stable 3.2.2 (bottled), HEAD [keg-only]

我试了一下,环境和你一致,加不加 aliases 结果都能跑

~ % ruby --version
ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-darwin22]
~ % pod --version 
1.12.1
cfg = YAML.load_file(File.join(flutter_project_dir, 'pubspec.yaml'))
# cfg = YAML.load_file(File.join(flutter_project_dir, 'pubspec.yaml'), aliases: true)
if cfg['tencent_kit'] && cfg['tencent_kit']['app_id']
    app_id = cfg['tencent_kit']['app_id']
    universal_link = cfg['tencent_kit']['universal_link']
    Pod::UI.puts "app_id #{app_id}"
    Pod::UI.puts "universal_link #{universal_link}"
    options = ""
    if universal_link
        options = "-u #{universal_link}"
    end
    system("ruby #{current_dir}/tencent_setup.rb -a #{app_id} #{options} -p #{project_dir} -n Runner.xcodeproj")
else
    abort("tencent app_id/universal_link is null, add code in pubspec.yaml:\ntencent_kit:\n  app_id: ${your tencent app id}\n  universal_link: https://${your applinks domain}/universal_link/${example_app}/qq_conn/${your tencent app id}/ # 可选项目\n")
end
lwj1994 commented 1 year ago

解析这行时,出的问题:

# lib version
isar_version: &isar_version 3.0.5

https://github.com/isar/isar

我使用了一个数据库 isar,它的官方 readme 使用了 alias 的语法来定义版本号

lwj1994 commented 1 year ago

https://github.com/ruby/psych/releases 看文档,load_file 应该是 Psych 5.0.0 的改动,对版本加个判断

if psych_version_gte_500 == true
    cfg = YAML.load_file(File.join(flutter_project_dir, 'pubspec.yaml'), aliases: true)
else
    cfg = YAML.load_file(File.join(flutter_project_dir, 'pubspec.yaml'))
end
lwj1994 commented 1 year ago

ci 要更新下 @droplet-js

Run flutter format --dry-run --set-exit-if-changed . The "format" command is deprecated. Please use the "dart format" sub-command instead, which has the same command-line usage as "flutter format".

droplet-js commented 1 year ago

ci 要更新下 @droplet-js

Run flutter format --dry-run --set-exit-if-changed .

The "format" command is deprecated. Please use the "dart format" sub-command instead, which has the same command-line usage as "flutter format".

你直接一起改了,然后我就能直接合并 ^_^

lwj1994 commented 1 year ago

ci 要更新下 @droplet-js Run flutter format --dry-run --set-exit-if-changed . The "format" command is deprecated. Please use the "dart format" sub-command instead, which has the same command-line usage as "flutter format".

你直接一起改了,然后我就能直接合并 ^_^

it is ok