PipeScript
0.1.6
An Extensible Transpiler for PowerShell (and anything else)
Minimum PowerShell version
4.0
Installation Options
Owners
Copyright
2022 Start-Automating
Package Details
Author(s)
- James Brundage
Tags
PipeScript PowerShell Transpilation Compiler
Dependencies
This module has no dependencies.
Release Notes
## 0.1.6:
* Added 'all' keyword (iterate over everything) (Fixes #244).
* Added Natural Language Processing to CommandAST (Fixes #242)
* New Language Support:
* HashiCorp Language (HCL) (Fixes #240 / #241)
* WebAssembly (WAT) (Fixes #239)
---
## 0.1.5:
* Support for [inherit]ing a command (Fixes #235) (finally/wow)
* Join-PipeScript: Overhauling (Fixes #231 Fixes #232 Fixes #233 Fixes #236)
* [Management.Automation.Language] type extensions: Adding .Script property and .ToString() scriptmethod (Fixes #234)
---
## 0.1.4:
* ValidateScriptBlock improvements
* Adding -NoLoop/-NoWhileLoop (Fixes #227)
* Adding -IncludeCommand/-ExcludeCommand (Fixes #224)
* Adding -IncludeType/-ExcludeType (Fixes #225)
* Adding -AstCondition (Fixes #226)
* Improved documentation of [decorate] transpiler (Fixes #222)
* Core Parameter Transpiler no longer considers real types (Fixes #223)
* Adding new value for PipeScript.PipeScriptType: BuildScript (Fixes #228)
---
## 0.1.3:
* New Protocols: UDP (Fixes #208)
* New Inline Language Support:
* ADA (Fixes #207)
* Basic/VB/VBScript (Fixes #206)
* R (Fixes #204)
* SQL (Fixes #200)
* TCL/TK (Fixes #205)
* Keyword improvements:
* new keyword now allows static members as constructor arguments (Fixes #214)
* until keyword uses do{} until (Fixes #217)
* General Improvements:
* Core Transpiler now respects .Rank (Fixes #210 #211)
* New-PipeScript:
* Fixing -Link behavior (Fixes #201)
* Trimming ends of examples (Fixes #202)
* Plurally aliasing -Examples and -Links (Fixes #203)
* Search-PipeScript:
* Now supports plural aliases for -RegularExpression (Fixes #219)
* ParameterTypeConstraint now ignores [ordered] (Fixes #190)
* Extended Type System Improvements:
* [ScriptBlock].Transpile() now throws (Fixes #212)
---
## 0.1.2:
* New Inline Language support
* Batch support (Fixes #198)
* Bash Support (Fixes #194)
* Core Inline Transpiler : Adding -LinePattern (fixes #197)
* New-PipeScript: Writing help (Fixes #195) and functions (fixes #196)
* AST Type Improvements:
* Adding [AST].Transpile() (Fixes #192)
* Considering a pipeline in a hashtable to be assigned (Fixes #193)
* [ScriptBlock]/[AST]: Adding .Transpilers (Fixes #185)
* [CommandAst].ResolvedCommand: Checking transpilers first (Fixes #186)
* Improvements:
* new keyword property bag improvements (Fixes #191)
* Use-PipeScript: Defaulting to core transpiler (Fixes #188)
* Core Transpiler: Allowing -ScriptBlock to be provided postionally (Fixes #189)
* Adding Hashtable formatter (Fixes #187)
* HTTP Protocol: Enabling Splatting (Fixes #183)
* Requiring Inline Transpilers accept [Management.Automation.CommandInfo] from the Pipeline (Fixes #184)
---
## 0.1.1:
* New Keywords:
* await (Fixes #181)
* New-PipeScript:
* Allowing -Parameter to be supplied via reflection (Fixes #171)
* Adding -ParameterHelp (Fixes #172)
* Adding -WeaklyTyped (Fixes #174)
* Update-PipeScript:
* Adding -RegexReplacement (Fixes #178)
* Adding -RegionReplacement (Fixes #179)
* Use-PipeScript:
* Supporting Get-Command -Syntax (Fixes #177)
* Types/Formatting Fixes:
* CommandAST/AttributeAST: Adding .Args/.Arguments/.Parameters aliases (Fixes #176)
* CommandAST: Fixing .GetParameter (Fixes #175)
* Updating PSToken control (more colorization) (Fixes #166)
* YAML Formatter indent / primitive support (Fixes #180)
---
## 0.1:
* PipeScript can now Transpile Protocols (Fixes #168)
* PipeScript can transpile http[s] protocol (Fixes #169)
* PipeScript now formats the AST (Fixes #166)
* Added .IsAssigned to CommandAST/PipelineAST (Fixes #167)
---
## 0.0.14:
* New Transpilers:
* [RemoveParameter] (#159)
* [RenameVariable] (#160)
* Keyword Updates:
* new now supports extended type creation (#164)
* until now supports a TimeSpan, DateTime, or EventName string (#153)
* AST Extended Type Enhancements:
* [TypeConstraintAst] and [AttributeAst] now have .ResolvedCommand (#162)
* Action Updates
* Pulling just before push (#163)
* Not running when there is not a current branch (#158)
* Improving email determination (#156)
* Invoke-PipeScript terminates transpiler errors when run interactively (#161)
---
## 0.0.13:
* New / Improved Keywords
* assert keyword (Support for pipelines) (#143)
* new keyword (Support for ::Create method) (#148)
* until keyword (#146)
* Syntax Improvements
* Support for === (#123) (thanks @dfinke)
* New Inline PipeScript support:
* Now Supporting Inline PipeScript in YAML (#147)
* General Improvements:
* Extending AST Types (#145)
---
## 0.0.12:
* Adding assert keyword (#143)
* Fixing new keyword for blank constructors (#142 )
* Rest Transpiler:
* Handling multiple QueryString values (#139)
* Only passing ContentType to invoker if invoker supports it (#141)
* Defaulting to JSON body when ContentType is unspecified (#140)
---
## 0.0.11:
* Source Generators Now Support Parameters / Arguments (#75)
* Invoke-PipeScript Terminating Build Errors (#135)
---
## 0.0.10:
* Improvements:
* REST transpiler
* Supports Query/BodyParameter with AmbientValue and DefaultBindingProperty (#119)
* Improved Documentation
* Logo (#132)
* Bugfixes:
* New-PipeScript (#122)
* Improving Improving inline documentation and [ScriptBlock] handling
* Join-PipeScript (#124)
* Adding .Examples
* Fixing parameter joining issues
---
## 0.0.9:
* New Features:
* new keyword (#128)
* == operator (#123 (thanks @dfinke))
* Fixes
* REST Transpiler automatically coerces [DateTime] and [switch] parameters (#118)
* Join-PipeScript: Fixing multiparam error (#124)
* ValidateScriptBlock: Only validing ScriptBlocks (#125)
---
## 0.0.8:
* New Commands:
* New-PipeScript (#94)
* Search-PipeScript (#115)
* New Transpilers:
* REST (#114)
* Inline.Kotlin (#110)
* Bugfixes and improvements:
* Fixing Help Generation (#56)
* Anchoring match for Get-Transpiler (#109)
* Core Inline Transpiler Cleanup (#111)
* Shared Context within Inline Transpilers (#112)
* Fixing Include Transpiler Pattern (#96)
* Join-PipeScript interactive .Substring error (#116)
---
## 0.0.7:
* Syntax Improvements:
* Support for Dot Notation (#107)
* New Transpilers:
* .>ModuleRelationships (#105)
* .>ModuleExports (#104)
* .>Aliases (#106)
* Fixes:
* Invoke-PipeScript improved error behavior (#103)
* Explicit Transpiler returns modified ScriptBlock (#102)
* .psm1 alias export fix (#100)
* Include improvements (#96)
---
## 0.0.6:
* New Transpilers:
* ValidateScriptBlock
* Improved Transpilers:
* [Include] not including source generators (#96)
* PipeScript.psm1 is now build with PipeScript (#95)
* Join-PipeScript: Fixing -BlockType (#97)
* GitHub Action will now look for PipeScript.psd1 in the workspace first (#98)
---
## 0.0.5
* New Language Features:
* PipedAssignment (#88)
* Command Fixes:
* Invoke-PipeScript now defaults unmapped files to treating them as PowerShell / PipeScript (#86)
* Improved Transpilers:
* .>PipeScript.Inline now supports -StartPattern/-EndPattern (#85)
* Inline Transpilers now use -StartPattern/-EndPattern (#85)
* Inline PipeScript Support for New Languages
* .>Inline.PSD1 (#89)
* .>Inline.XML now handles .PS1XML (#91)
---
## 0.0.4
* New Transpilers:
* .>RegexLiteral (#77)
* Improved Transpilers:
* .>PipeScript.Inline now supports -ReplacePattern (#84)
* .>Include now supports wildcards (#81)
* Inline PipeScript Support for New Languages
* ATOM (#79)
* Bicep (#73)
* HLSL (#76)
* Perl / POD (#74)
* RSS (#80)
---
## 0.0.3
* New Transpilers:
* .>ValidateExtension (#64)
* .>OutputFile (#53)
* Inline PipeScript Support for New Languages
* Python (#63)
* PHP (#67)
* Razor (#68)
* Bugfixes / improvements:
* Plugged Invoke-PipeScript Parameter Leak (#69)
* .>ValidateTypes transpiler now returns true (#65)
* .>ValidateTypes transpiler now can apply to a [VariableExpressionAST] (#66)
* Building PipeScript with PipeScript (#54)
---
## 0.0.2
* New Transpilers:
* .>ValidatePlatform (#58)
* .>ValidatePropertyName (#59)
* .>Inline.ObjectiveC (#60)
* Transpiler Fixes
* .>VBN now supports -Position (#57)
* GitHub Action Bugfix (#55)
---
## 0.0.1
Initial Commit.
FileList
- PipeScript.nuspec
- docs\Inline.R.md
- New-PipeScript.ps1.ps1
- docs\Dot.md
- PipeScript.types.ps1xml
- docs\BatchPowerShell.md
- Use-PipeScript.ps1
- docs\Aliases.md
- README.ps1.md
- Transpilers\Keywords\Assert.psx.ps1
- Search-PipeScript.ps1
- Transpilers\Keywords\New.psx.ps1
- PipeScript.ezout.ps1
- Transpilers\Keywords\README.ps1.md
- action.yml
- Transpilers\Keywords\All.tests.ps1
- Join-PipeScript.ps1
- Transpilers\Keywords\New.tests.ps1
- PipeScript.HelpOut.ps1
- Transpilers\Keywords\README.md
- Get-PipeScript.ps1
- Transpilers\Keywords\Until.tests.ps1
- PipeScript.format.ps1xml
- Transpilers\Keywords\Await.tests.ps1
- Get-Transpiler.ps1
- Transpilers\Keywords\All.psx.ps1
- LICENSE
- Transpilers\Keywords\Until.psx.ps1
- PipeScript.GitHubWorkflow.PSDevOps.ps1
- Transpilers\Keywords\Await.psx.ps1
- Transpilers\Keywords\Assert.tests.ps1
- CNAME
- Transpilers\Protocols\UDP.Protocol.psx.ps1
- PipeScript.psm1
- Transpilers\Protocols\README.ps1.md
- PipeScript.tests.ps1
- Transpilers\Protocols\Http.Protocol.tests.ps1
- PipeScript.psd1
- Transpilers\Protocols\Http.Protocol.psx.ps1
- PipeScript.ps1.psm1
- Transpilers\Protocols\README.md
- README.md
- Transpilers\Modules\ModuleRelationship.psx.ps1
- PipeScript.Piecemeal.ps1
- Transpilers\Modules\ModuleExports.psx.ps1
- SupportedLanguages.md
- Transpilers\Syntax\Dot.psx.ps1
- SupportedLanguages.ps1.md
- Transpilers\Syntax\README.ps1.md
- ListOfTranspilers.md
- Transpilers\Syntax\EqualityComparison.psx.ps1
- PipeScript.GitHubAction.PSDevOps.ps1
- Transpilers\Syntax\PipedAssignment.psx.ps1
- New-PipeScript.ps1
- Transpilers\Syntax\RegexLiteral.psx.ps1
- CHANGELOG.md
- Transpilers\Syntax\README.md
- Update-PipeScript.ps1
- Transpilers\Syntax\EqualityTypeComparison.psx.ps1
- Build-PipeScript.ps1
- Transpilers\Wrappers\Bash.psx.ps1
- Invoke-PipeScript.ps1
- Transpilers\Wrappers\README.ps1.md
- ListOfTranspilers.ps1.md
- Transpilers\Wrappers\README.md
- Search-PipeScript.ps1.ps1
- Transpilers\Wrappers\BatchPowerShell.psx.ps1
- Formatting\PipeScript.Sentence.format.ps1
- Transpilers\Wrappers\Batch.psx.ps1
- Formatting\Ast.format.ps1
- Transpilers\Core\README.ps1.md
- Formatting\PipeScript.format.ps1
- Transpilers\Core\Pipescript.psx.ps1
- Formatting\Markdown.format.ps1
- Transpilers\Core\PipeScript.Inline.psx.ps1
- Formatting\Search.PipeScript.Result.format.ps1
- Transpilers\Core\PipeScript.TypeExpression.psx.ps1
- Formatting\YAML.format.ps1
- Transpilers\Core\PipeScript.ParameterTypeConstraint.psx.ps1
- Formatting\PipeScript.Transpiler.format.ps1
- Transpilers\Core\README.md
- Formatting\PSToken.control.ps1
- Transpilers\Core\PipeScript.ParameterAttribute.psx.ps1
- Formatting\Hashtable.format.ps1
- Transpilers\Core\PipeScript.Protocol.psx.ps1
- Transpilers\RenameVariable.psx.ps1
- Transpilers\Core\Pipescript.FunctionDefinition.psx.ps1
- Transpilers\README.ps1.md
- Transpilers\Core\PipeScript.AttributedExpression.psx.ps1
- Transpilers\Rest.psx.ps1
- Transpilers\Parameters\README.ps1.md
- Transpilers\Decorate.psx.ps1
- Transpilers\Parameters\ValidatePlatform.psx.ps1
- Transpilers\Include.psx.ps1
- Transpilers\Parameters\ValidateScriptBlock.tests.ps1
- Transpilers\Inherit.psx.ps1
- Transpilers\Parameters\VBN.psx.ps1
- Transpilers\README.md
- Transpilers\Parameters\RemoveParameter.psx.ps1
- Transpilers\OutputFile.psx.ps1
- Transpilers\Parameters\Aliases.psx.ps1
- Transpilers\Explicit.psx.ps1
- Transpilers\Parameters\README.md
- Transpilers\Help.psx.ps1
- Transpilers\Parameters\ValidateTypes.psx.ps1
- Transpilers\ProxyCommand.psx.ps1
- Transpilers\Parameters\ValidateExtension.psx.ps1
- Assets\PipeScript.svg
- Transpilers\Parameters\ValidatePropertyName.psx.ps1
- docs\Help.md
- Transpilers\Parameters\ValidateScriptBlock.psx.ps1
- docs\ValidateExtension.md
- Transpilers\Parameters\VFP.psx.ps1
- docs\Inline.CSharp.md
- Transpilers\Inline\Inline.ATOM.psx.ps1
- docs\Inline.PHP.md
- Transpilers\Inline\Inline.Ruby.psx.ps1
- docs\ValidatePropertyName.md
- Transpilers\Inline\Inline.Java.psx.ps1
- docs\VFP.md
- Transpilers\Inline\Inline.Kotlin.psx.ps1
- docs\Inline.Kotlin.md
- Transpilers\Inline\Inline.Razor.psx.ps1
- docs\PipedAssignment.md
- Transpilers\Inline\Inline.Rust.psx.ps1
- docs\New-PipeScript.md
- Transpilers\Inline\Inline.CSS.psx.ps1
- docs\Inline.Razor.md
- Transpilers\Inline\Inline.PHP.psx.ps1
- docs\Inline.TypeScript.md
- Transpilers\Inline\Inline.RSS.psx.ps1
- docs\EqualityComparison.md
- Transpilers\Inline\Inline.TOML.psx.ps1
- docs\Inline.Batch.md
- Transpilers\Inline\Inline.CPlusPlus.psx.ps1
- docs\Pipescript.md
- Transpilers\Inline\README.ps1.md
- docs\PipeScript.Protocol.md
- Transpilers\Inline\Inline.HCL.psx.ps1
- docs\Get-PipeScript.md
- Transpilers\Inline\Inline.Basic.psx.ps1
- docs\Await.md
- Transpilers\Inline\Inline.YAML.psx.ps1
- docs\Inline.HLSL.md
- Transpilers\Inline\Inline.CSharp.psx.ps1
- docs\PipeScript.AttributedExpression.md
- Transpilers\Inline\Inline.PSD1.psx.ps1
- docs\PipeScript.ParameterTypeConstraint.md
- Transpilers\Inline\Inline.Batch.psx.ps1
- docs\PipeScript.TypeExpression.md
- Transpilers\Inline\Inline.ADA.psx.ps1
- docs\ValidatePlatform.md
- Transpilers\Inline\Inline.HTML.psx.ps1
- docs\All.md
- Transpilers\Inline\Inline.Markdown.psx.ps1
- docs\Build-Pipescript.md
- Transpilers\Inline\Inline.Json.psx.ps1
- docs\RenameVariable.md
- Transpilers\Inline\Inline.Perl.psx.ps1
- docs\Inline.ATOM.md
- Transpilers\Inline\Inline.TCL.psx.ps1
- docs\New.md
- Transpilers\Inline\Inline.WebAssembly.ps1
- docs\Update-PipeScript.md
- Transpilers\Inline\Inline.HLSL.psx.ps1
- docs\Inline.YAML.md
- Transpilers\Inline\Inline.R.psx.ps1
- docs\ValidateScriptBlock.md
- Transpilers\Inline\README.md
- docs\Inline.Rust.md
- Transpilers\Inline\Inline.Python.psx.ps1
- docs\EqualityTypeComparison.md
- Transpilers\Inline\Inline.JavaScript.psx.ps1
- docs\Inline.Bicep.md
- Transpilers\Inline\Inline.Go.psx.ps1
- docs\Inline.SQL.md
- Transpilers\Inline\Inline.XML.psx.ps1
- docs\Inline.OpenSCAD.md
- Transpilers\Inline\Inline.SQL.psx.ps1
- docs\Join-PipeScript.md
- Transpilers\Inline\Inline.Bicep.psx.ps1
- docs\OutputFile.md
- Transpilers\Inline\Inline.Bash.psx.ps1
- docs\Inline.Markdown.md
- Transpilers\Inline\Inline.TypeScript.psx.ps1
- docs\Inline.HCL.md
- Transpilers\Inline\Inline.ObjectiveC.psx.ps1
- docs\PipeScript.ParameterAttribute.md
- Transpilers\Inline\Inline.OpenSCAD.psx.ps1
- docs\Inline.CSS.md
- Github\Actions\PipeScriptAction.ps1
- docs\Explicit.md
- Types\PipeScript.Sentence\Run.ps1
- docs\ModuleExports.md
- Types\PipeScript.Sentence\Alias.psd1
- docs\Inline.Perl.md
- Types\VariableExpressionAST\ConvertFromAST.ps1
- docs\Inline.PSD1.md
- Types\VariableExpressionAST\GetAssignments.ps1
- docs\README.md
- Types\VariableExpressionAST\TypeName.txt
- docs\Inline.Ruby.md
- Types\VariableExpressionAST\GetVariableType.ps1
- docs\Inline.Python.md
- Types\AST\ConvertFromAST.ps1
- docs\RemoveParameter.md
- Types\AST\GetLineage.ps1
- docs\SupportedLanguages.md
- Types\AST\Transpile.ps1
- docs\Inline.TCL.md
- Types\AST\get_Transpilers.ps1
- docs\ProxyCommand.md
- Types\AST\get_Tokens.ps1
- docs\ListOfTranspilers.md
- Types\AST\TypeName.txt
- docs\Pipescript.FunctionDefinition.md
- Types\CommandAST\AsSentence.ps1
- docs\Inline.Java.md
- Types\CommandAST\get_PipelinePosition.ps1
- docs\Batch.md
- Types\CommandAST\get_ResolvedCommand.ps1
- docs\Inline.CPlusPlus.md
- Types\CommandAST\get_IsPiped.ps1
- docs\Inline.ObjectiveC.md
- Types\CommandAST\Alias.psd1
- docs\Until.md
- Types\CommandAST\get_ArgumentList.ps1
- docs\CHANGELOG.md
- Types\CommandAST\TypeName.txt
- docs\Inline.RSS.md
- Types\CommandAST\get_PipelineLength.ps1
- docs\Inline.ADA.md
- Types\CommandAST\get_IsAssigned.ps1
- docs\Inline.Basic.md
- Types\CommandAST\get_Parameter.ps1
- docs\PipeScript.Inline.md
- Types\PipeScript\get_PipeScriptType.ps1
- docs\UDP.Protocol.md
- Types\ConstantExpressionAST\ConvertFromAST.ps1
- docs\Inline.JavaScript.md
- Types\ConstantExpressionAST\TypeName.txt
- docs\Inline.TOML.md
- Types\ScriptBlockExpressionAST\ConvertFromAST.ps1
- docs\Assert.md
- Types\ScriptBlockExpressionAST\TypeName.txt
- docs\Inline.Bash.md
- Types\ScriptBlockExpressionAST\GetScriptBlock.ps1
- docs\Inherit.md
- Types\TypeConstraintAST\get_ResolvedCommand.ps1
- docs\ModuleRelationship.md
- Types\TypeConstraintAST\TypeName.txt
- docs\Http.Protocol.md
- Types\PipelineAST\Typename.txt
- docs\Use-PipeScript.md
- Types\PipelineAST\get_IsAssigned.ps1
- docs\Inline.HTML.md
- Types\AttributeAST\get_ResolvedCommand.ps1
- docs\Include.md
- Types\AttributeAST\Alias.psd1
- docs\Inline.Json.md
- Types\AttributeAST\get_ArgumentList.ps1
- docs\VBN.md
- Types\AttributeAST\TypeName.txt
- docs\Bash.md
- Types\AttributeAST\get_Parameter.ps1
- docs\Search-PipeScript.md
- Types\ScriptRequirements\ToString.ps1
- docs\Get-Transpiler.md
- Types\ScriptRequirements\get_Script.ps1
- docs\Inline.XML.md
- Types\ScriptRequirements\TypeName.txt
- docs\Inline.Go.md
- Types\ScriptBlock\Transpile.ps1
- docs\ValidateTypes.md
- Types\ScriptBlock\get_Transpilers.ps1
- docs\RegexLiteral.md
- Types\ScriptBlock\TypeName.txt
- docs\Invoke-PipeScript.md
- docs\Assets\PipeScript.svg
- docs\Decorate.md
- docs\Rest.md
Version History
Version | Downloads | Last updated |
---|---|---|
0.2.8 | 3,564 | 2/19/2024 |
0.2.7 | 987 | 12/18/2023 |
0.2.6 | 113 | 6/29/2023 |
0.2.5 | 29 | 4/27/2023 |
0.2.4 | 13 | 3/31/2023 |
0.2.3 | 24 | 3/12/2023 |
0.2.2 | 36 | 12/24/2022 |
0.2.1 | 23 | 11/16/2022 |
0.2 | 10 | 11/14/2022 |
0.1.9 | 17 | 11/7/2022 |
0.1.8 | 15 | 10/21/2022 |
0.1.7 | 15 | 10/9/2022 |
0.1.6 (current version) | 12 | 10/8/2022 |
0.1.5 | 21 | 9/22/2022 |
0.1.4 | 23 | 9/19/2022 |
0.1.3 | 19 | 9/15/2022 |
0.1.2 | 14 | 9/8/2022 |
0.1.1 | 20 | 8/8/2022 |
0.1 | 16 | 8/1/2022 |
0.0.14 | 12 | 7/31/2022 |
0.0.13 | 17 | 7/26/2022 |
0.0.12 | 12 | 7/24/2022 |
0.0.11 | 16 | 7/20/2022 |
0.0.9 | 15 | 7/15/2022 |
0.0.8 | 14 | 7/10/2022 |
0.0.7 | 15 | 7/4/2022 |
0.0.6 | 13 | 7/2/2022 |
0.0.5 | 15 | 6/29/2022 |
0.0.4 | 13 | 6/28/2022 |
0.0.3 | 17 | 6/22/2022 |
0.0.2 | 12 | 6/21/2022 |
0.0.1 | 13 | 6/21/2022 |