Comments (7)
@natebosch Yes, #382 would be sufficient.
from mono_repo.dart.
I support better integration in principle. Figuring out the details is always fun, though.
CC @natebosch and @jakemac53
from mono_repo.dart.
Personally I would suggest just creating your own script under tool
, which invokes melos and then mono_repo?
If we did want to support something like this I would probably just support running arbitrary commands, we don't want to be picking up a dependency on the api of melos.
from mono_repo.dart.
we don't want to be picking up a dependency on the api of melos.
+1
would #382 be sufficient to solve this use case?
from mono_repo.dart.
I'm not very familiar with mono_repo
so I've created an example repo to better understand how to integrate it with Melos.
It's possible to get it working with Melos, but it's not great:
# a/mono_pkg.yaml
sdk:
- stable
stages:
- analyze:
- command:
- 'dart pub global activate melos'
- 'dart pub global run melos bootstrap --scope a'
- 'dart analyze'
- format:
- command:
- 'dart pub global activate melos'
- 'dart pub global run melos bootstrap --scope a'
- 'dart format --output=none --set-exit-if-changed .'
- test:
- command:
- 'dart pub global activate melos'
- 'dart pub global run melos bootstrap --scope a'
- 'dart test'
I don't think #382 would help all that much, since you would have to configure Melos for every job, if I understand the intent of the PR correctly.
It would be optimal, if there was a way to replace the pub upgrade
step with an arbitrary command. Even better, if the command gets the name of the current package in an environment variable.
If this was configurable in mono_repo.yaml
for all jobs, it would make it really simple to set up Melos.
from mono_repo.dart.
Yeah, having some template silly (like #382 ) would be nice. Not sure how much complexity we'd be adding...
from mono_repo.dart.
Would it make sense to expose TaskType.beforeAllSteps
/TaskType.afterEachSteps
, maybe via mono_repo.yaml
, similar to how on_completion
is exposed? My use case could also benefit from the lack of repetition. Another option would be to define a custom action in the repo and use #382, but that would lead to nearly the same amount of repetition, I think.
from mono_repo.dart.
Related Issues (20)
- Request for tips: how to handle product life cycle with mono_repo? HOT 1
- "dart.bat" file not found (anymore) HOT 3
- Generate .github/dependabot.yaml HOT 1
- Flutter Support in Github Actions HOT 8
- Pin hashes for dependencies HOT 14
- Found 1 file excluded from sound null safety
- Flutter package determination HOT 4
- The save-state command is deprecated and will be disabled soon HOT 3
- Option to generate workflow files for automated publishing HOT 1
- add support for dart format
- execution stats for all modules
- option to declare mono_repo support in pubspec.yaml
- add a mono_repo.yaml option to not generate the self-check HOT 4
- Add `concurrency` option for Github actions HOT 1
- update mono_repo so that it can work with dependabot HOT 3
- Support only running jobs for affected packages HOT 3
- Add a way to specify dependency versions for all packages in mono_repo.yaml. HOT 3
- Add a `fix` command to run `dart fix` across all packages HOT 2
- Support wildcard (`major.minor`) SDK version specifiers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mono_repo.dart.