Giter VIP home page Giter VIP logo

abxml-rs's People

Contributors

gnieto avatar razican avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

abxml-rs's Issues

Add Crates.io badges

We are not taking advantage of the new Cargo.toml keywords, and they should be added. This is the list of keywords we should add in the [badges] section:

  • travis-ci = { repository = "...", branch = "master" }: Adds Travis-CI build information.
  • appveyor = { repository = "...", branch = "master", service = "github" }: Adds Appveyor Windows build information, depends on #58.
  • coveralls = { repository = "...", branch = "master", service = "github" }: Adds Coveralls coverage report, but we might want to switch to Codecov, since it works much better (#59). In that case we would need to add codecov = { repository = "...", branch = "master", service = "github" }.
  • is-it-maintained-issue-resolution = { repository = "..." }: Adds information about issue resolution time.
  • is-it-maintained-open-issues = { repository = "..." }: Adds information about open issues.
  • maintenance = { status = "..." }: Adds information about the current maintenance status. Options are actively-developed, passively-maintained, as-is, none, experimental, looking-for-maintainer and deprecated. I would propose passively-maintained, but suggestions are welcome.

We should also add the categories keyword to the [package] section.

For more information, check the Package metadata section in the Cargo documentation.

Weird output for `platformBuildVersionCode` and `platformBuildVersionName`

I get the following from get_attributes of the root element of an AndroidManifest.xml parsed with this library:

{platformBuildVersionCode: @flags:28, android:versionCode: 10042, android:versionName: 9.17.3.1, android:compileSdkVersion: 28, platformBuildVersionName: @flags:9, android:compileSdkVersionCodename: 9, package: cm.aptoide.pt}

The platformBuildVersionCode: @flags:28 and platformBuildVersionName: @flags:9 appears to be a slight mis-parse? For comparison, here is the output of the same APK file from apktool (and is matched by JADX):

<?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" package="cm.aptoide.pt" platformBuildVersionCode="28" platformBuildVersionName="9">
 ...snip...

Let me know if providing the affected APK helps. FWIW, this isn't an isolated thing and I get the same result from a bunch of APKs downloaded from apkpure.com.

Add Windows tests

We should add Windows tests in Appveyor to have a more complete CI.

Consider implementing `ToOwned`

Some Clippy warnings show that the correct way of implementing to_owned methods is using std::borrow::ToOwned. I think it's a good idea to implement it that way.

Move to Codecov for coverage report

We are currently using Coveralls for code coverage report. This service has been unreliable in the past, and I propose to move it to CodeCov as we did with the main SUPER repository.

Add new labels to issues

As we did with SUPER, we should have more possible labels to indicate difficulty of issues or areas of the crate.

Asynchronous API

Now that async/await is stable, we can rewrite / extend the API using async-std to improve the performance of code using this ABXML reading library.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.