Skip to content

Commit bf6cd3a

Browse files
committed
Merge branch 'master' of github.com:OAI/OpenAPI-Specification
2 parents d3c26f5 + 42a9e3d commit bf6cd3a

18 files changed

+5041
-41
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: convert-examples-to-json
2+
3+
# author: @MikeRalphson / @cebe
4+
# issue: https://github.com/OAI/OpenAPI-Specification/issues/1385
5+
6+
#
7+
# This workflow updates the *.json files in the examples/v3.x directories,
8+
# when the corresponding *.yaml files change.
9+
# JSON example files are automatically generated from the YAML example files.
10+
# Only the YAML files should be adjusted manually.
11+
#
12+
13+
# run this on push to master
14+
on:
15+
push:
16+
branches:
17+
- master
18+
19+
jobs:
20+
yaml2json:
21+
22+
runs-on: ubuntu-latest
23+
24+
steps:
25+
- uses: actions/checkout@v1 # checkout repo content
26+
27+
- name: Install dependencies
28+
run: npm i
29+
30+
- name: convert YAML examples to JSON
31+
run: find examples/v3* -type f -name "*.yaml" | xargs node scripts/yaml2json/yaml2json.js
32+
33+
- name: git diff
34+
run: |
35+
git add examples/**/*.json
36+
git --no-pager -c color.diff=always diff --staged
37+
38+
- name: Create Pull Request
39+
uses: peter-evans/create-pull-request@v1
40+
with:
41+
token: ${{ secrets.GITHUB_TOKEN }}
42+
branch-suffix: none
43+
branch: update-json-examples
44+
title: Update JSON example files
45+
commit-message: Update JSON example files
46+
body: |
47+
This pull request is automatically triggered by GitHub action `convert-examples-to-json`.
48+
49+
The examples/v3.* YAML files have changed, so the JSON files are automatically being recreated.
50+

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@
55
target
66
atlassian-ide-plugin.xml
77
node_modules/
8+
package-lock.json
89
Gemfile.lock

CODE_OF_CONDUCT.md

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
Code of Conduct
2+
===============
3+
4+
OpenAPI Initiative Code of Conduct
5+
6+
*The Linux Foundation*
7+
8+
*Effective November 24, 2020*
9+
10+
The OpenAPI Initiative (OAI) is an open source Linux Foundation project
11+
and home of the OpenAPI Specification (OAS) released under the Apache
12+
2.0 license. As contributors, maintainers, and participants in this
13+
project, we want to foster an open and welcoming environment. We pledge
14+
to make participation in our project and our community a harassment-free
15+
experience for everyone, regardless of age, body size, disability,
16+
ethnicity, gender identity and expression, level of experience,
17+
education, socio-economic status, nationality, personal appearance,
18+
race, religion, or sexual identity and orientation.
19+
20+
Our Standards
21+
-------------
22+
23+
Examples of behaviors that contribute to creating a positive environment
24+
include:
25+
26+
- Using welcoming and inclusive language
27+
28+
- Being respectful of differing viewpoints and experiences
29+
30+
- Gracefully accepting constructive criticism
31+
32+
- Focusing on what is best for the community
33+
34+
- Showing empathy towards other community members
35+
36+
- Assuming the best intent from others
37+
38+
Examples of unacceptable behavior by participants include:
39+
40+
- The use of sexualized language or imagery and unwelcome sexual attention or advances
41+
42+
- Making unsolicited, insulting or derogatory comments, including personal (i.e., ad hominem) or political attacks to create conflict (e.g., trolling)
43+
44+
- Public or private harassment
45+
46+
- Publishing others' private information, such as a physical or electronic address, without explicit permission (e.g., doxxing)
47+
48+
- Threatening, offensive, harmful comments, or behavior
49+
50+
- Other conduct which could reasonably be considered inappropriate in a professional setting
51+
52+
Our Responsibilities
53+
--------------------
54+
55+
The Code of Conduct Committee is responsible for clarifying the
56+
standards of acceptable behavior and is expected to take appropriate and
57+
fair corrective action in response to any instances of unacceptable
58+
behavior.
59+
60+
Scope
61+
-----
62+
63+
This Code of Conduct applies to OAI project spaces, as well as
64+
interactions in public spaces. Project spaces include, but are not
65+
limited to, official OAI code repositories, Slack, mailing lists,
66+
meetings, and events. Public spaces may include venues where an
67+
individual is representing the project or its community. Examples of
68+
this include a community member's email communication, forum posts,
69+
social media activity, or acting as a representative at an online or
70+
offline event. In addition, violations of this code of conduct outside
71+
of these spaces may affect a person's ability to participate in them.
72+
73+
Enforcement
74+
-----------
75+
76+
To report instances of abuse, harassment, or otherwise unacceptable
77+
behavior, contact
78+
[conduct\@openapis.org](mailto:[email protected]). **We
79+
are committed to maintaining the confidentiality of anyone reporting an
80+
incident**. The Code of Conduct Committee will review and investigate
81+
all complaints, responding as deemed necessary and appropriate to the
82+
circumstances. For incidents relating to offline events, we aim to
83+
respond to reports within 24 hours, and for incidents relating to online
84+
activities, we aim to respond to reports within 7 days.
85+
86+
The Code of Conduct Committee has the right and responsibility to
87+
remove, edit, or reject comments, commits, code, wiki edits, issues, and
88+
other contributions that are not aligned to this Code of Conduct, or
89+
take other appropriate action as deemed necessary for behaviors contrary
90+
to the standards listed above. In the case of offline or in-person
91+
events, if a participant engages in behavior that is not aligned to this
92+
Code of Conduct, the committee may take action, such as warning the
93+
offender, banning the offender from various online spaces (temporary or
94+
permanent), removing the offender from an event with no refund, or other
95+
options deemed appropriate.
96+
97+
Further details of specific enforcement policies are currently being
98+
drafted. When these details are completed we will post updates to our
99+
website for transparency.
100+
101+
Project maintainers who do not report possible incidents or follow
102+
responses in good faith may face temporary or permanent repercussions as
103+
determined by the Code of Conduct Committee.
104+
105+
### Events
106+
107+
Some OpenAPI events are governed by the [Linux Foundation Code of
108+
Conduct](https://events.linuxfoundation.org/about/code-of-conduct/)
109+
(E.g. API Specifications Conference) and will be listed on the event
110+
page. The OAI Code of Conduct is designed to be compatible with the
111+
above policy and also includes more details on responding to incidents.
112+
113+
### Attribution
114+
115+
This code of conduct is adapted from the [Contributor Covenant, version
116+
1.4](https://www.contributor-covenant.org/version/1/4/code-of-conduct)
117+
and the [PyCon 2019 Code of
118+
Conduct](https://us.pycon.org/2019/about/code-of-conduct/).

README.md

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,38 @@
11
# The OpenAPI Specification
22

3-
[![Build Status](https://travis-ci.org/OAI/OpenAPI-Specification.svg?branch=master)](https://travis-ci.org/OAI/OpenAPI-Specification)
3+
![Build Status](https://github.com/OAI/OpenAPI-Specification/workflows/validate-markdown/badge.svg)
44

55
![](https://avatars3.githubusercontent.com/u/16343502?v=3&s=200)
66

7+
78
The OpenAPI Specification is a community-driven open specification within the [OpenAPI Initiative](https://www.openapis.org/), a Linux Foundation Collaborative Project.
89

9-
The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for [REST APIs](https://en.wikipedia.org/wiki/Representational_state_transfer), which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.
10+
The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.
1011

11-
Use cases for machine-readable API definition documents include, but are not limited to: interactive documentation; code generation for documentation, clients, and servers; and automation of test cases. OpenAPI documents describe an API's services and are represented in either YAML or JSON formats. These documents may either be produced and served statically or be generated dynamically from an application.
12+
Use cases for machine-readable API definition documents include, but are not limited to: interactive documentation; code generation for documentation, clients, and servers; and automation of test cases. OpenAPI documents describe an APIs services and are represented in either YAML or JSON formats. These documents may either be produced and served statically or be generated dynamically from an application.
1213

13-
The OpenAPI Specification does not require rewriting existing APIs. It does not require binding any software to a service the service being described may not even be owned by the creator of its description. It does, however, require the capabilities of the service be described in the structure of the OpenAPI Specification. Not all services can be described by OpenAPI this specification is not intended to cover every possible style of REST APIs. The OpenAPI Specification does not mandate a specific development process such as design-first or code-first. It does facilitate either technique by establishing clear interactions with a REST API.
14+
The OpenAPI Specification does not require rewriting existing APIs. It does not require binding any software to a service the service being described may not even be owned by the creator of its description. It does, however, require the capabilities of the service be described in the structure of the OpenAPI Specification. Not all services can be described by OpenAPI this specification is not intended to cover every possible style of HTTP APIs, but does include support for [REST APIs](https://en.wikipedia.org/wiki/Representational_state_transfer). The OpenAPI Specification does not mandate a specific development process such as design-first or code-first. It does facilitate either technique by establishing clear interactions with a HTTP API.
1415

1516
This GitHub project is the starting point for OpenAPI. Here you will find the information you need about the OpenAPI Specification, simple examples of what it looks like, and some general information regarding the project.
1617

17-
## Current Version - 3.0.3
18-
19-
The current version of the OpenAPI specification is [OpenAPI Specification 3.0.3](versions/3.0.3.md).
20-
21-
### Future Versions
18+
## Current Version - 3.1.0
2219

23-
[3.1.0](https://github.com/OAI/OpenAPI-Specification/tree/v3.1.0-dev) - The next MINOR version. Non-breaking changes should be submitted against this branch.
20+
The current version of the OpenAPI specification is [OpenAPI Specification 3.1.0](versions/3.1.0.md).
2421

2522
### Previous Versions
2623

27-
This repository also contains the [OpenAPI Specification 2.0](versions/2.0.md), which is identical to the Swagger 2.0 specification before it was renamed to "OpenAPI Specification", as well as the Swagger 1.2 and Swagger 2.0 specifications.
24+
This repository also contains all [previous versions](versions).
2825

2926
Each folder in this repository, such as [examples](examples) and [schemas](schemas), should contain folders pertaining to the current and previous versions of the specification.
3027

3128
## See It in Action
3229

33-
If you just want to see it work, check out the [list of current examples](examples/v3.0).
30+
If you just want to see it work, check out the [list of current examples](examples).
3431

3532
## Tools and Libraries
3633

3734
Looking to see how you can create your own OpenAPI definition, present it, or otherwise use it? Check out the growing
38-
[list of 3.0 implementations](IMPLEMENTATIONS.md).
35+
[list of implementations](IMPLEMENTATIONS.md).
3936

4037
## Participation
4138

@@ -47,7 +44,7 @@ The TSC holds weekly web conferences to review open pull requests and discuss op
4744

4845
The OpenAPI Initiative encourages participation from individuals and companies alike. If you want to participate in the evolution of the OpenAPI Specification, consider taking the following actions:
4946

50-
* Review the [current specification](versions/3.0.3.md). The human-readable markdown file _is the source of truth_ for the specification.
47+
* Review the [current specification](versions/3.1.0.md). The human-readable markdown file _is the source of truth_ for the specification.
5148
* Review the [development](DEVELOPMENT.md) process so you understand how the spec is evolving.
5249
* Check the [issues](https://github.com/OAI/OpenAPI-Specification/issues) and [pull requests](https://github.com/OAI/OpenAPI-Specification/pulls) to see if someone has already documented your idea or feedback on the specification. You can follow an existing conversation by subscribing to the existing issue or PR.
5350
* Create an issue to describe a new concern. If possible, propose a solution.

TOB.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Marsh Gardiner @earth2marsh
1212

1313
Ron Ratovsky @webron
1414

15-
## BGB Elected - terms through May 2020
15+
## BGB Elected - terms through May 2022
1616

1717
Darrel Miller @darrelmiller
1818

0 commit comments

Comments
 (0)