Giter Club home page Giter Club logo

pub_release's People

Contributors

bsutton avatar reductions avatar robrbecker avatar

Stargazers

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

Watchers

 avatar  avatar

pub_release's Issues

multi release must only tag once for a mono repo

When doing a multi package release in a mono repo we are currently tagging the repo for each project but its in the same repo so this makes no sense.

We need to change the tagging code so that it only tags the repo once.

We need to be smart about this as multi should work for mono and non-mono repos.

2nd entry of custom version is being ignored.

If you choose to enter a custom version and get it wrong you can re-enter the custom version no.

The problem is that it then reports that the 'The accepted version is:' and reports the version no. that was entered on the first attempt.

Support multi-phase test runs.

The conduit project has a number of tests that cannot be run in parallel.

One suggested approach is that we allow a multi-stage testing process.

Each stage would run using a specific set of tags.

This will probably need to be done via a config file as the cli arguments would be a bit complex

pub_release -staged=single,parallel

Something like the above might work. This would create two stages on run with the 'single' tag and one run with the 'parallel' tag.

We would need to allow quoting of these as dart tests tags support tag expressions.
e.g.
single && !windows

We could create a config file pub_release.yaml with the following sections:

stages:
stage:
tag: single
thread: 1
stage: parallel
threads: 4
stage: single && !windows

One issue with the above approach is that we may need different switches for each stage.

For example conduit needs different -j1 switches pass in each stage.

Exception "Null check operator used on a null value" when running in Flutter package

ANDROID_HOME:
/usr/lib/android-sdk
pub_release -v output:

_pathToScript: /usr/lib/dart/bin/dart
dart 7.1.11
exists: true /home/tsutton/Projects/dimension_ratios/pubspec.yaml followLinks: true
read: /home/tsutton/Projects/dimension_ratios/pubspec.yaml, delim: 

exists: true /home/tsutton/Projects/dimension_ratios/pubspec.yaml followLinks: true

Found dimension_ratios version 0.0.1

ask:  Is this the correct package? (y/n): toLower: true hidden: false required: false defaultValue: null
Is this the correct package? (y/n): y
ask: pre validation "y"
ask: post validation "y"
ask: result y

exists: true /home/tsutton/Projects/dimension_ratios/pubspec.yaml followLinks: true
exists: true /home/tsutton/Projects/dimension_ratios/pubspec.lock followLinks: true
exists: true /home/tsutton/Projects/dimension_ratios/.dart_tool/package_config.json followLinks: true
env:  PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/dart/bin:/home/tsutton/.pub-cache/bin:/home/tsutton/flutter/bin:/usr/lib/dart/bin:/usr/lib/android-sdk/cmdline-tools/latest/bin:/home/tsutton/.pub-cache/bin:/home/tsutton/flutter/bin:/usr/lib/dart/bin:/usr/lib/android-sdk/cmdline-tools/latest/bin
exists: false /usr/local/sbin/critical_test followLinks: true
exists: false /usr/local/bin/critical_test followLinks: true
exists: false /usr/sbin/critical_test followLinks: true
exists: false /usr/bin/critical_test followLinks: true
exists: false /sbin/critical_test followLinks: true
exists: false /bin/critical_test followLinks: true
exists: false /usr/games/critical_test followLinks: true
exists: false /usr/local/games/critical_test followLinks: true
exists: false /snap/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /home/tsutton/.pub-cache/bin/critical_test followLinks: true
exists: false /home/tsutton/flutter/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /usr/lib/android-sdk/cmdline-tools/latest/bin/critical_test followLinks: true
exists: false /home/tsutton/.pub-cache/bin/critical_test followLinks: true
exists: false /home/tsutton/flutter/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /usr/lib/android-sdk/cmdline-tools/latest/bin/critical_test followLinks: true
exists: true /home/tsutton/Projects/dimension_ratios/.gitignore followLinks: true
read: /home/tsutton/Projects/dimension_ratios/.gitignore, delim: 

exists: true /home/tsutton/Projects/dimension_ratios/.gitignore followLinks: true
exists: true /home/tsutton/Projects/dimension_ratios/test followLinks: true
env:  PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/dart/bin:/home/tsutton/.pub-cache/bin:/home/tsutton/flutter/bin:/usr/lib/dart/bin:/usr/lib/android-sdk/cmdline-tools/latest/bin:/home/tsutton/.pub-cache/bin:/home/tsutton/flutter/bin:/usr/lib/dart/bin:/usr/lib/android-sdk/cmdline-tools/latest/bin
exists: false /usr/local/sbin/critical_test followLinks: true
exists: false /usr/local/bin/critical_test followLinks: true
exists: false /usr/sbin/critical_test followLinks: true
exists: false /usr/bin/critical_test followLinks: true
exists: false /sbin/critical_test followLinks: true
exists: false /bin/critical_test followLinks: true
exists: false /usr/games/critical_test followLinks: true
exists: false /usr/local/games/critical_test followLinks: true
exists: false /snap/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /home/tsutton/.pub-cache/bin/critical_test followLinks: true
exists: false /home/tsutton/flutter/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /usr/lib/android-sdk/cmdline-tools/latest/bin/critical_test followLinks: true
exists: false /home/tsutton/.pub-cache/bin/critical_test followLinks: true
exists: false /home/tsutton/flutter/bin/critical_test followLinks: true
exists: false /usr/lib/dart/bin/critical_test followLinks: true
exists: false /usr/lib/android-sdk/cmdline-tools/latest/bin/critical_test followLinks: true
Unhandled exception:
Null check operator used on a null value
#0      exeName (package:pub_release/src/release_runner.dart:437:29)
#1      ReleaseRunner.doRunTests (package:pub_release/src/release_runner.dart:410:11)
#2      ReleaseRunner.pubRelease.<anonymous closure> (package:pub_release/src/release_runner.dart:44:18)
#3      ReleaseRunner.doRun (package:pub_release/src/release_runner.dart:390:17)
#4      ReleaseRunner.pubRelease (package:pub_release/src/release_runner.dart:36:5)
#5      main (file:///home/tsutton/.pub-cache/hosted/pub.dartlang.org/pub_release-7.1.11/bin/pub_release.dart:152:14)
#6      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:281:32)
#7      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

Flutter doctor -v output:

[✓] Flutter (Channel master, 2.4.0-5.0.pre.105, on Pop!_OS 21.04 5.12.18-xanmod3, locale en_AU.UTF-8)
    • Flutter version 2.4.0-5.0.pre.105 at /home/tsutton/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision a5b9b5774a (2 days ago), 2021-07-19 20:23:45 -0700
    • Engine revision 9edde7423f
    • Dart version 2.14.0 (build 2.14.0-332.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /usr/lib/android-sdk
    • Platform android-30, build-tools 29.0.3
    • ANDROID_HOME = /usr/lib/android-sdk
    • Java binary at: /home/tsutton/Downloads/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+0-b944-P17168821)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 12.0.1-1~kisak~h
    • cmake version 3.18.4
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[✓] Android Studio (version 4.2)
    • Android Studio at /home/tsutton/Downloads/android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+0-b944-P17168821)

[✓] VS Code (version 1.57.1)
    • VS Code at /usr/share/code
    • Flutter extension version 3.24.0

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Pop!_OS 21.04 5.12.18-xanmod3

! Doctor found issues in 1 category.

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.