codepush_cli 0.2.6
codepush_cli: ^0.2.6 copied to clipboard
Command line tool for CodePush: register an app, build a patchable release, and publish signed Dart patches to installed Android and iOS apps.
0.2.6 #
Matches codepush 0.2.6.
0.2.5 #
Matches codepush 0.2.5.
0.2.4 #
Matches codepush 0.2.4.
0.2.3 #
codepush verify ios says so when the update check was due but never ran,
rather than leaving it to look like a check that found nothing.
0.2.2 #
codepush verify ios prints the last update check: what it decided, which
patch the manifest offers, what the device has staged, and the reason when a
patch was refused.
0.2.1 #
Releases were built with an empty manifest address whenever the server had no
explicit public base URL configured — the normal case for Firebase Storage,
whose download URLs encode the whole object path and so have no base to join a
path onto. The app had nothing to fetch and reported noPatch forever against
a correctly signed patch sitting in the bucket. The address now comes from the
server, which is the only party that knows it, and a build refuses to start
rather than baking an empty one.
The cached app record dropped engineIndexUrl, so a cached read reported that
the server publishes no engines.
codepush verify ios prints which patch the device is running.
0.2.0 #
codepush login opens a browser instead of asking for a token to paste, and
codepush init generates the signing key itself — skipping that step used to
be unrecoverable, because the public key is compiled into every release.
codepush --version exists. Engines are downloaded rather than built, so a
machine that only publishes patches needs no engine checkout.
iOS releases worked only on the machine CodePush was developed on. Seven separate causes, each invisible there:
- The generated iOS entrypoint imports
codepush_ios, and nothing said to add it.release iosnow refuses up front, andinitmentions it for a project with an ios/ directory. list_librariesandsubtract_librarieswere run asdart run <source>, which needs the Dart source tree and the dartdev snapshot. They are AOT snapshots in the engine tarball now.- The generated patch contract was read as its own base: a crash on a project that had never released, and on one that had, a contract that only ever grew.
gen_snapshotwas shipped under that name; an iOS build asks forgen_snapshot_arm64.codepush doctornow checks the name the build resolves, not any of three.- iOS releases were never recorded with the server, so every
patch iosended at "No ios release for this app". - The iOS patch signer put
1.0.0+1where the server verified1.0.0, so every iOS patch was refused as a signature failure.
0.1.0 #
First release.