milesj
Repos
52
Followers
555
Following
29

A task runner and repo management tool for the web ecosystem, written in Rust.

1735
38

📦 Build and prepare packages for npm distribution using standardized configurations and practices. Gotta pack 'em all!

141
2

🚀 A collection of type-safe cross-platform packages for building robust server-side and client-side systems.

98
5

🎮 A collection of lightweight, up-to-date, pre-generated, specification compliant, localized emoji JSON datasets, regex patterns, and more.

340
30

🌀 React library to safely render HTML, filter attributes, autowrap text with matchers, render emoji characters, and much more.

945
34

Docusaurus plugin that provides source code API documentation powered by TypeDoc.

42
12

Events

delete branch
milesj delete branch moon-100
Created at 2 hours ago

deps(moon): Update to v1. (#35)

Created at 2 hours ago
pull request closed
deps(moon): Update to v1.
Created at 2 hours ago
issue comment
[bug] `moon ci` cannot find a Node dependency

Can you see if this is resolved with v1? Be sure the task has platform: system.

Created at 2 hours ago
issue comment
[bug] Moon cannot find system binary

v1 now wraps system tasks in a shell. Can you see if the bin is found now?

Created at 2 hours ago
closed issue
[feature] `$timestamp` token variable

Is your feature request related to a problem? Please describe.

I have the need to define a task in .moon/tasks.yml which dynamically include the current system timestamp in a command argument. e.g.

  deploy:
    command: 'cdk'
    args:
      - 'deploy'
      - '--all'
      - '--require-approval=never'
      - '--app "deploy --target=$projectRoot"'
      - '--output $workspaceRoot/.cdk/$project/$(date +%s)'
    deps:
      - ~:build

The $(date +%s) portion is problematic as we're not in a sh or bash shell and there doesn't appear to be a way to get that kind of data.

Describe the solution you'd like

The quick and dirty fix for our needs would be to create a new token variable $timestamp that was set to the system timestamp/epoch. It doesn't have to be high resolution, but I certainly wouldn't complain if it was.

Describe alternatives you've considered

I'm not sure at the moment how to get around this. A nice alternative might be something like a @shell function that would allow executing shell commands and returning the stdout output. Something like @shell($(date +%s)) would get the job done.

Additional context

Created at 3 hours ago
issue comment
[feature] `$timestamp` token variable

Landed in v1

Created at 3 hours ago
issue comment
[bug] Task with no inputs doesn't behave correctly

@mrobinsn Can you try v1?

Created at 3 hours ago
pull request opened
deps(moon): Update to v1.
Created at 3 hours ago
create branch
milesj create branch moon-100
Created at 3 hours ago
closed issue
[feature] Run code block / multiple commands for a task

Is your feature request related to a problem? Please describe.

It's not convenient to run a code block in tasks currently, which is quite common if we want moon to be "language agnostic and easily pluggable in the future."

Describe the solution you'd like

Add running code block support for tasks, like

tasks:
    build:
           shell: bash    # It will be better if we can change to other shells, support syntax like `['bash', '-c']` or `bash -c`
           load-dotenv: true   # load a `.env` file automatically for the following code block
           run: |    # Writing multi-line commands for better readability
                 npm ci
                 npm run build
                 echo 'Done'

REF: https://docs.github.com/en/github-ae@latest/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

Describe alternatives you've considered

Additional context

Created at 3 hours ago
issue comment
[feature] Run code block / multiple commands for a task

System tasks now support shells in v1. I'm going to close this as we won't support multi-commands in a single task.

Created at 3 hours ago
closed issue
[bug/feature] should be able to execute any shell commands

i would like to be able to use execute any shell command in a selectable shell. most users have several cli utilities install that are only available in a certain shell with a profile)

shell: powershell os: win 11 moon: 0.8.0

.moon/project.yml

tasks:
  clean:
    command: 'rimraf'
    type: 'system'
    args:
    - ' dist'

current error message

  $ moon run types:clean
▪▪▪▪ types:clean

 ERROR  Process failure for rimraf: program not found

rimraf is installed globally with npm

also why cant the command value be a 'sentence' (string with whitespaces), to write the full command of something? if you need any further information please let me know.

Created at 3 hours ago
issue comment
[bug/feature] should be able to execute any shell commands

Long time coming, but system tasks now run in a shell in v1.

Created at 3 hours ago

Release

  • @moonrepo/core-linux-arm64-gnu@1.0.0
  • @moonrepo/core-linux-x64-musl@1.0.0
  • @moonrepo/core-linux-x64-gnu@1.0.0
  • @moonrepo/cli@1.0.0
  • @moonrepo/core-macos-arm64@1.0.0
  • @moonrepo/report@1.0.0
  • @moonrepo/core-macos-x64@1.0.0
  • @moonrepo/core-linux-arm64-musl@1.0.0
  • @moonrepo/core-windows-x64-msvc@1.0.0
  • @moonrepo/runtime@0.0.12
  • @moonrepo/types@1.0.0
  • @moonrepo/visualizer@0.1.4
Created at 4 hours ago
closed issue
v1 roadmap

It's happening!

  • [x] Project constraints/boundaries via tagging
  • [x] CI/CD provider information
  • [x] Telemetry settings
  • [x] $timestamp token - https://github.com/moonrepo/moon/issues/705

Investigate

  • [x] Wrap system commands in a shell
Created at 4 hours ago
pull request closed
v1.0

Development branch for https://github.com/moonrepo/moon/issues/708

Created at 4 hours ago
create branch
milesj create branch release-0.26
Created at 4 hours ago
delete branch
milesj delete branch 10-task-fixes
Created at 4 hours ago

fix: Improve default/empty task input handling. (#747)

  • Test stuff.

  • Add flags and global inputs.

  • Fix tests.

  • More tests.

  • Rename flag.

Created at 4 hours ago
pull request closed
fix: Improve default/empty task input handling.

Fixes https://github.com/moonrepo/moon/issues/746

This implementation is far too complicated, I need to rewrite it. The problem is that inputs come from multiple sources -- global inputs, implicit inputs, local inputs -- and how they all merge together still feels like undefined functionality.

Created at 4 hours ago

Rename flag.

Created at 4 hours ago

Fix tests.

More tests.

Created at 4 hours ago
issue comment
[bug] Task with no inputs doesn't behave correctly

Digging into this here: https://github.com/moonrepo/moon/pull/747/files

Will get this in for the release today.

Created at 5 hours ago

Add flags and global inputs.

Created at 5 hours ago
delete branch
milesj delete branch 10-docs
Created at 6 hours ago

docs: Add how it works sections. (#745)

  • Start on cheat sheet.

  • Update blog.

  • Add lang how it works.

  • Update deps.

  • Add project graph.

  • Change headers.

  • Start on dep graph.

  • Add dep graph.

  • Update deps.

  • Delete resolutions.

  • Fix build.

Created at 6 hours ago
pull request closed
docs: Add how it works sections.

Trying to provide more knowledge about how moon's internals work.

Created at 6 hours ago
pull request opened
Fix task input handling.
Created at 6 hours ago
issue comment
proto doesn't really work on windows

@lagz0ne Good callout. I kind of just assumed everyone had git, so I'll add it to the docs.

Created at 6 hours ago