Commit Graph

20 Commits

Author SHA1 Message Date
SandeshPyakurel 9adb3862f2
Typos fixed in implementers-guide.md file ()
<!--- 
Thanks so much for your contribution! If this is your first time
contributing, please ensure that you have read the
[CONTRIBUTING](https://github.com/pulumi/pulumi/blob/master/CONTRIBUTING.md)
documentation.
-->

# Description

Multiple typos fixed in developer-docs/providers/implementers-guide.md
file.

Co-authored-by: Sandesh-Pyakurel <pyakurelsandesh14@gmail.com>
2023-10-23 15:26:55 +00:00
Fraser Waters 571fadae3f Use slice.Prealloc instead of make([]T, 0, ...)
Fixes https://github.com/pulumi/pulumi/issues/12738

https://github.com/pulumi/pulumi/pull/11834 turned on the prealloc
linter and changed a load of slice uses from just `var x T[]` to `x :=
make([]T, 0, preallocSize)`. This was good for performance but it turns
out there are a number of places in the codebase that treat a `nil`
slice as semnatically different to an empty slice.

Trying to test that, or even reason that through for every callsite is
untractable, so this PR replaces all expressions of the form `make([]T,
0, size)` with a call to `slice.Prealloc[T](size)`. When size is 0 that
returns a nil array, rather than an empty array.
2023-06-29 11:27:50 +01:00
susanev 031b2958f1 fix some links
Signed-off-by: susanev <susan.ra.evans@gmail.com>
2023-05-19 19:39:26 -07:00
Kyle Dixler 947bef8769
Create README.md
Add README.md for the developer documentation site for more visibility as it's super helpful.
2023-04-11 11:20:22 -07:00
Abhinav Gupta 79caac6b5a
go.mod: Raise to 'go 1.18'
Raise the 'go' directive for top-level Go modules to 1.18.
This is the minimum version of Go required by Pulumi.
Raising this directive allows us to use language features like generics
in the codbase.

Resolves 
2023-02-07 14:40:55 -08:00
aq17 b02eb8d83a Add `willReplaceOnChanges` to metaschema 2022-12-09 13:31:21 -08:00
Anton Tayanovskyy d8273c9042
Revert "Correct type grammar in dev docs ()" ()
This reverts commit b38e512e8d.
2022-09-12 16:15:12 -07:00
Anton Tayanovskyy b38e512e8d
Correct type grammar in dev docs () 2022-09-12 17:43:41 -04:00
Daniel Bradley 228f82d6dd
A notes about implementing cancellation () 2021-12-10 18:58:26 +00:00
Pat Gavlin a1339277f0
[schema] Add enum overlay support. ()
And update the metaschema to accommodate the `isOverlay` properties
added in . Overlay enums, like other overlay members, are
implemented out-of-band by the declaring package. Code generators should
not generate declarations for overlay enums.
2021-11-16 15:53:28 -08:00
Levi Blackstone 0d4fb3e340
[schema] Add IsOverlay option to disable codegen for particular types ()
Add a new `IsOverlay` option to schema types and functions that allows providers to document overlays in the schema. This makes it easier to generate API docs consistently, even for code that is generated outside of the typical codegen process.
2021-11-11 17:00:03 -07:00
Pat Gavlin 3a545de34a
[developer-docs] Document resource import. ()
These changes add a page to the developer docs that describes the design
and implementation of the `import` resource option and the `pulumi
import` command.

Co-authored-by: Levi Blackstone <levi@pulumi.com>
2021-10-07 12:14:37 -07:00
Pat Gavlin 10816d6414 [developer-docs] Change some type system terms.
- Remove a reference to monads
- s/type constructor/type function/
2021-09-30 09:51:34 -07:00
Pat Gavlin aeaeb1fbb9
[developer-docs] Add preliminary type system docs. ()
Just what it says on the tin: add some initial documentation for the
abstract Pulumi type system. Over time, this documentation will be
fleshed out to describe the relationship between the abstract type
system and its wire representations, Pulumi package schemas, and
language SDK implementations.

Co-authored-by: Andrew Fitzgerald <131809+fitzoh@users.noreply.github.com>
Co-authored-by: Ian Wahbe <ian@wahbe.com>
2021-09-29 15:01:50 -07:00
Pat Gavlin 134d7cb818
[apitype] Add a JSON schema for deployments. ()
This schema can be used to validate the contents of a Pulumi deployment.
If a deployment validates against this schema, it should be considered
syntactically valid, though it may contain certain classes of semantic
errors (e.g. references to unknown resources in dependency lists,
dependency cycles, etc.).

This schema is not yet used for validation in practice and may not be
entirely accurate.

These changes also add this schema (and the schemas on which it depends)
to the developer documentation. jsonschema2md.go has been updated to
support multi-file schemas.
2021-09-21 21:37:06 -07:00
Pat Gavlin 236ce54269
[schema] Add the Pulumi Package metaschema. ()
The Pulumi Package metaschema is a JSON schema definition that describes
the format of a Pulumi Package schema. The metaschema can be used to
validate certain basic properties of a Pulumi Package schema, including
(but not limited to):

- data types (e.g. is this property a string?)
- data formats (e.g. is this string property a valid regex?)
- object shapes (e.g. is this object missing required properties?)

The schema binder has been updated to use the metaschema as its first
validation pass.

In addition to its use in the binder, the metaschema has its own page in
the developer documentation. This page is generated using a small tool,
jsonschema2md.go.
2021-09-20 12:00:42 -07:00
Emiliza Gutierrez c7614f5066
fix typos in dev docs ()
* typo fixes and styling

* fix typos
2021-08-27 21:18:39 -07:00
Pat Gavlin a5a818b802
[developer-docs] Add links + a broad arch diagram ()
- Add links within the resource registration docs
- Add a broad-strokes architectural diagram to the overview
- Add a `clean` target to the Makefile
- Expand the "Building" docs a bit
2021-08-27 10:55:06 -07:00
Levi Blackstone 96e6eb2592
Fix typos () 2021-08-26 11:29:56 -07:00
Pat Gavlin 98f73cf1ed
Start in on developer documentation. ()
Developer documentation is written in Markdown and can be built into
HTML, PDF, etc. using Sphinx. Diagrams are written in PlantUML and
rendered as SVGs. All developer docs live in the `developer-docs` folder
under the root of the repository.
2021-08-25 15:18:13 -07:00