You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@avro.apache.org by rs...@apache.org on 2023/03/21 19:20:55 UTC

[avro] branch master updated: AVRO-3264: Improvements to the project section of the Avro website (#2145)

This is an automated email from the ASF dual-hosted git repository.

rskraba pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/avro.git


The following commit(s) were added to refs/heads/master by this push:
     new ace4d5d2e AVRO-3264: Improvements to the project section of the Avro website (#2145)
ace4d5d2e is described below

commit ace4d5d2e5940f085f171df9653c94197795fa67
Author: nishchaldv <83...@users.noreply.github.com>
AuthorDate: Wed Mar 22 00:50:49 2023 +0530

    AVRO-3264: Improvements to the project section of the Avro website (#2145)
    
    * AVRO-3264: improvement to the project section of the avro website
    
    * AVRO-3264: improvement to the project section of the avro website
---
 doc/content/en/_index.html                         |   2 +-
 doc/content/en/community/_index.md                 |   2 +-
 doc/content/en/project/Articles/_index.md          |  84 ++++++++++++++++
 .../project/Committer onboarding guide/_index.md   |  48 +++++++++
 .../Contributors onboarding guide /_index.md       |  39 ++++++++
 doc/content/en/project/Donate/_index.md            |   2 +-
 doc/content/en/project/Events/_index.md            |   2 +-
 doc/content/en/project/How to contribute/_index.md | 110 ++++++++++++++++++++-
 doc/content/en/project/License/_index.md           |   2 +-
 doc/content/en/project/Papers/_index.md            |  73 ++++++++++++++
 doc/content/en/project/Privacy policy/_index.md    |   2 +-
 doc/content/en/project/Security/_index.md          |   2 +-
 doc/content/en/project/Thanks/_index.md            |   2 +-
 .../en/project/pmc onboarding guide/_index.md      |  34 +++++++
 14 files changed, 394 insertions(+), 10 deletions(-)

diff --git a/doc/content/en/_index.html b/doc/content/en/_index.html
index 57c806025..618a99a14 100644
--- a/doc/content/en/_index.html
+++ b/doc/content/en/_index.html
@@ -69,4 +69,4 @@ For Python users, find out everything you need to know about specifying a schema
 Learn from or connect with other users in our open and welcoming community. We'd love to hear from you!
 {{% /blocks/feature %}}
 
-{{< /blocks/section >}}
+{{< /blocks/section >}}
\ No newline at end of file
diff --git a/doc/content/en/community/_index.md b/doc/content/en/community/_index.md
index 7394738c0..643c53258 100644
--- a/doc/content/en/community/_index.md
+++ b/doc/content/en/community/_index.md
@@ -32,4 +32,4 @@ aliases:
 
 -->
 
-<!--add blocks of content here to add more sections to the community page -->
+<!--add blocks of content here to add more sections to the community page -->
\ No newline at end of file
diff --git a/doc/content/en/project/Articles/_index.md b/doc/content/en/project/Articles/_index.md
new file mode 100755
index 000000000..e30d9ef1d
--- /dev/null
+++ b/doc/content/en/project/Articles/_index.md
@@ -0,0 +1,84 @@
+---
+title: "Articles"
+linkTitle: "Articles"
+weight: 4
+---
+
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+--> 
+** **
+
+**Guide to Apache Avro**  
+Feb 19, 2023, by baeldung.
+
+https://www.baeldung.com/java-apache-avro
+
+** **
+
+**Apache Avro IDL Schema Support**,   
+Apr 11, 2022, by Oscar Westra van Holthe - Kind.
+
+https://plugins.jetbrains.com/plugin/15728-apache-avro-idl-schema-support
+
+** **
+
+**Generate random JSON data from an AVRO schema using Java**,    
+Jan 24, 2022, by Maarten Smeets.
+
+https://technology.amis.nl/soa/kafka/generate-random-json-data-from-an-avro-schema-using-java/
+
+** **
+
+**A Gentle (and Practical) Introduction to Apache Avro**,   
+Dec 22, 2020, by Anton Rodriguez.
+
+https://dzone.com/articles/gentle-and-practical-introduction-to-apache-avro-part-1
+
+** **
+
+**Apache Avro – A data serialization system**  
+Dec 09, 2018, by Dennis Vriend.
+
+https://binx.io/2018/12/09/apache-avro/
+
+** **
+
+**Introduction to Apache Avro**  
+Mar 12, 2016, by Bartosz Konieczny.
+
+https://www.waitingforcode.com/apache-avro/introduction-to-apache-avro/read
+
+** **
+
+**Reading and Writing Avro Files from the Command Line**,    
+Mar 17, 2013, by Michael G. Noll.
+
+https://www.michael-noll.com/blog/2013/03/17/reading-and-writing-avro-files-from-the-command-line/
+
+** **
+
+**Using Apache Avro**     
+Jan 25, 2011, by Boris Lublinsky.
+
+https://www.infoq.com/articles/ApacheAvro/
+
+
+
diff --git a/doc/content/en/project/Committer onboarding guide/_index.md b/doc/content/en/project/Committer onboarding guide/_index.md
new file mode 100755
index 000000000..eb865a42a
--- /dev/null
+++ b/doc/content/en/project/Committer onboarding guide/_index.md	
@@ -0,0 +1,48 @@
+---
+title: "Committer onboarding guide"
+linkTitle: "Committer onboarding guide"
+weight: 7
+---
+
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+--> 
+** **
+For you, the new committer:
+
+1. File your ICLA and send it to secretary@apache.org
+2. Log in to https://whimsy.apache.org; that will confirm a working ASF account
+3. You can edit email routing for the account, and add other emails that you own
+4. You can directly edit mailing list subscriptions (for example, you might switch them to your ASF account - you can still post from any of your registered emails)
+5. Link your GitHub account with your ASF account at https://gitbox.apache.org/ once you see the big green "Merge" button on pull requests, this is working
+7. Read the ASF new committer guide: https://www.apache.org/dev/new-committers-guide.html
+
+** **
+
+A committer in JIRA can add a new contributor by following these steps:
+
+1. Log in to JIRA with your committer credentials.
+2. Navigate to the project where you want to add the new contributor.
+3. Click on the "People" tab at the top of the page.
+4. Click on the "Add People" button.
+5. Enter the email address of the new contributor in the "Email Address" field.
+6. Select the appropriate role for the new contributor from the "Role" dropdown menu.
+7. Click the "Add" button to add the new contributor to the project.
+8. An email will be sent to the new contributor asking them to accept the invitation to join the project.
diff --git a/doc/content/en/project/Contributors onboarding guide /_index.md b/doc/content/en/project/Contributors onboarding guide /_index.md
new file mode 100644
index 000000000..e53b136c6
--- /dev/null
+++ b/doc/content/en/project/Contributors onboarding guide /_index.md	
@@ -0,0 +1,39 @@
+---
+title: "Contributor onboarding guide"
+linkTitle: "Contributor onboarding guide"
+weight: 8
+---
+
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+--> 
+
+
+1. Familiarize yourself with Apache Avro: Before you start contributing to Apache Avro, it's essential to have a good understanding of what Apache Avro is and how it works. You can start by reading the Apache Avro documentation to get an overview of the project's features, use cases, and architecture.
+
+2. Join the Apache Avro community: Join the Apache Avro mailing lists, IRC channels, and forums to interact with other contributors and users. You can ask questions, discuss ideas, and get feedback on your contributions from experienced contributors.
+3. Set up your development environment: To contribute to Apache Avro, you need to set up your development environment. The Apache Avro project uses Git for version control, and Apache Maven for building. You can follow the instructions in the Apache Avro documentation to set up your environment.
+4. Choose a contribution: Apache Avro is an open-source project, and there are always new features, bug fixes, and improvements that can be made. You can choose from a wide range of contributions, from documentation updates to code changes.
+5. Review existing issues and pull requests: Before you start working on a contribution, it's important to review existing issues and pull requests to avoid duplicating efforts. You can use the Apache Avro issue tracker to search for issues and pull requests related to your contribution.
+6. Create a new issue or pull request: If you can't find an existing issue or pull request related to your contribution, you can create a new one. Make sure to provide detailed information about your contribution, including a description of the problem, proposed solution, and any relevant code changes.
+7. Work on your contribution: Once you have a clear understanding of the contribution you want to make, you can start working on it. Make sure to follow the Apache Avro coding guidelines and best practices to ensure that your code is of high quality.
+8. Submit your contribution: When you're ready to submit your contribution, create a pull request in the Apache Avro GitHub repository. Make sure to include a detailed description of your changes, and any relevant documentation or test cases.
+9. Participate in reviews: Once you've submitted your contribution, it will be reviewed by other contributors. You may need to make additional changes based on their feedback before your contribution is accepted.
+Celebrate your contribution: Once your contribution has been accepted, celebrate your achievement! You've helped improve Apache Avro and contributed to the open-source community.
\ No newline at end of file
diff --git a/doc/content/en/project/Donate/_index.md b/doc/content/en/project/Donate/_index.md
index 1cc11aebc..c87561fef 100755
--- a/doc/content/en/project/Donate/_index.md
+++ b/doc/content/en/project/Donate/_index.md
@@ -1,7 +1,7 @@
 ---
 title: "Donate"
 linkTitle: "Donate"
-weight: 6
+weight: 13
 manualLink: https://www.apache.org/foundation/sponsorship.html
 ---
 
diff --git a/doc/content/en/project/Events/_index.md b/doc/content/en/project/Events/_index.md
index 50276f36b..7d8646283 100755
--- a/doc/content/en/project/Events/_index.md
+++ b/doc/content/en/project/Events/_index.md
@@ -1,7 +1,7 @@
 ---
 title: "Events"
 linkTitle: "Events"
-weight: 5
+weight: 12
 ---
 
 <!--
diff --git a/doc/content/en/project/How to contribute/_index.md b/doc/content/en/project/How to contribute/_index.md
index 6617c0a7d..679f02bc4 100755
--- a/doc/content/en/project/How to contribute/_index.md	
+++ b/doc/content/en/project/How to contribute/_index.md	
@@ -1,7 +1,7 @@
 ---
 title: "How to contribute"
 linkTitle: "How to contribute"
-weight: 3
+weight: 5
 ---
 
 <!--
@@ -35,7 +35,6 @@ The easiest way is to clone or fork the GitHub mirror:
 git clone https://github.com/apache/avro.git -o github
 ```
 
-
 ## Making Changes
 
 Before you start, file an issue in [JIRA](https://issues.apache.org/jira/browse/AVRO) or discuss your ideas on the [Avro developer mailing list](http://avro.apache.org/mailing_lists.html). Describe your proposed changes and check that they fit in with what others are doing and have planned for the project. Be patient, it may take folks a while to understand your requirements.
@@ -276,7 +275,114 @@ Please refrain from editing descriptions and comments if possible, as edits spam
 
 Contributors should join the Avro mailing lists. In particular, the commit list (to see changes as they are made), the dev list (to join discussions of changes) and the user list (to help others).
 
+## Workflow
+
+Building and running the site locally requires a recent extended version of Hugo. Install [Hugo](https://gohugo.io/installation/) for your environment. Once you've made your working copy of the site repo, from the repo root folder, run:
+
+```shell
+hugo server --navigateToChanged
+```
+Edit .md and .html files in content/ folder
+
+Once satisfied with the changes, commit them:
+```shell
+git commit -a
+```
+Generate the HTML file stop hugo server --navigateToChanged (with Ctrl+C) and run
+```shell
+hugo
+```
+This will generate the HTMLs in public/ folder and this is actually what is being deployed
+
+Add the modified HTML files to Git
+
+```shell
+git add .
+git rm offline-search-index.<<OLD-HASH>>.json
+git commit -a
+git push
+```
+This way even when the PR modifies a lot of files we can review only the first commit, the meaningful one, with the modified files in content/ folder
+
+
+## Running a container locally
+You can also run avro-website inside a Docker container, the container runs with a volume bound to the avro-website folder. This approach doesn't require you to install any dependencies other than Docker Desktop on Windows and Mac, and Docker Compose on Linux.
+
+Build the docker image
+
+```shell
+docker-compose build
+```
+Run the built image
+ ```shell
+docker-compose up
+```
+NOTE: You can run both commands at once with docker-compose up --build.
+
+Verify that the service is working.
+
+Open your web browser and type http://localhost:1313 in your navigation bar, This opens a local instance of the docsy-example homepage. You can now make changes to the docsy example and those changes will immediately show up in your browser after you save.
+
+**Cleanup**
+
+To stop Docker Compose, on your terminal window, press Ctrl + C.
+
+To remove the produced images run:
+ ```shell
+docker-compose rm
+```
+
+## Troubleshooting
+As you run the website locally, you may run into the following error:
+ ```shell
+➜ hugo server
+
+INFO 2021/01/21 21:07:55 Using config file: 
+Building sites … INFO 2021/01/21 21:07:55 syncing static files to /
+Built in 288 ms
+Error: Error building site: TOCSS: failed to transform "scss/main.scss" (text/x-scss): resource "scss/scss/main.scss_9fadf33d895a46083cdd64396b57ef68" not found in file cache
+ ```
+This error occurs if you have not installed the extended version of Hugo. See our user guide for instructions on how to install Hugo.
+
+## Edit content
+The website content is in content/en folder. It contains .md (Markdown) and .html (HTML) files.
+
+**Layouts**
+
+To change the layout of any page edit layouts/<page>/**.html. If there is no layout for a given page at that location then copy the one provided by the theme and edit it:
+ ```shell
+ cp themes/docsy/layouts/<xyz> layouts/<xyz>
+  ```
+**Avro version**
+
+When a new version of Apache Avro is released:
+
+Change the value of params.avroversion in config.toml
+Add a new entry to the Releases pages in the Blog section, for example:
+ ```shell
+cp content/en/blog/releases/avro-1.10.2-released.md content/en/blog/releases/avro-1.11.0-released.md
+ ```
+**API documentation for C/C++/C# modules**
+
+The API documentations for C/C++/C# are built by their respective build.sh dist implementations. The final HTML should be copied to the external folder, for example:
+ ```shell
+cp ../avro/build/avro-doc-1.12.0-SNAPSHOT/api/c/* content/en/docs/external/c/
+ ```
+
+## JIRA conventions
+
+Issue types: JIRA issues are categorized into different types such as bugs, improvements, new features, etc. Each issue type has a unique icon and a set of fields that are specific to that type.  
+
+Workflow: JIRA issues follow a predefined workflow that defines the steps that an issue goes through from creation to resolution. Each step in the workflow can have its own set of conditions and actions.
+
+Priority: JIRA allows users to set priorities for issues to help determine the order in which they should be addressed. The priority can be set to one of five levels: Blocker, Critical, Major, Minor, and Trivial. Blocker is the highest priority and Trivial is the lowest priority.
+
+Labels: Labels are used to tag issues with keywords or phrases that can help with searching and filtering.
+
+Components: Components are used to group related issues together. For example, a software project might have components for the user interface, database, and networking.
+
 ## See Also
 
 - [Apache contributor documentation](http://www.apache.org/dev/contributors.html)
 - [Apache voting documentation](http://www.apache.org/foundation/voting.html)
+
diff --git a/doc/content/en/project/License/_index.md b/doc/content/en/project/License/_index.md
index c7e312faa..1840ccfc0 100755
--- a/doc/content/en/project/License/_index.md
+++ b/doc/content/en/project/License/_index.md
@@ -1,7 +1,7 @@
 ---
 title: "License"
 linkTitle: "License"
-weight: 3
+weight: 11
 manualLink: https://www.apache.org/licenses/
 ---
 
diff --git a/doc/content/en/project/Papers/_index.md b/doc/content/en/project/Papers/_index.md
new file mode 100755
index 000000000..beaace168
--- /dev/null
+++ b/doc/content/en/project/Papers/_index.md
@@ -0,0 +1,73 @@
+---
+title: "Papers"
+linkTitle: "Papers"
+weight: 3
+---
+
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+--> 
+** **
+
+**A Benchmark of JSON-compatible Binary Serialization Specifications**   
+Jan 9 2022, by Juan Cruz Viotti, Mital Kinderkhedia.
+
+https://arxiv.org/abs/2201.03051
+
+** **
+
+**A Survey of JSON-compatible Binary Serialization Specifications**   
+Jan 6 2022, by Juan Cruz Viotti, Mital Kinderkhedia.
+
+https://arxiv.org/abs/2201.02089
+
+** **
+
+**Putting Avro into Hive**   
+Apr 2017, by S. Sreekanth, A Sai Ram Pramodhini, Ch S Likita, Chiluka Manisha.
+
+https://journals.pen2print.org/index.php/ijr/article/view/7377/0
+
+
+** **
+
+**Benchmarking Performance of Data Serialization and RPC Frameworks in Microservices Architecture: gRPC vs. Apache Thrift vs. Apache Avro**   
+Oct 27 2016, by Nguyen, Thuy.
+
+https://aaltodoc.aalto.fi/handle/123456789/23386
+
+** ** 
+
+**Apache Avro**    
+Sep 30 2016, by Deepak Vohra.
+
+https://link.springer.com/chapter/10.1007/978-1-4842-2199-0_7
+
+** **
+
+
+**Object serialization vs relational data modelling in Apache Cassandra: a performance evaluation**    
+Apr 2015, by Valdemar Johansen.
+
+https://www.diva-portal.org/smash/get/diva2:839521/FULLTEXT02.pdf
+
+
+
+
diff --git a/doc/content/en/project/Privacy policy/_index.md b/doc/content/en/project/Privacy policy/_index.md
index 8d6b564fa..1e3a5c202 100755
--- a/doc/content/en/project/Privacy policy/_index.md	
+++ b/doc/content/en/project/Privacy policy/_index.md	
@@ -1,7 +1,7 @@
 ---
 title: "Privacy policy"
 linkTitle: "Privacy policy"
-weight: 3
+weight: 9
 manualLink: https://hadoop.apache.org/privacy_policy.html
 ---
 
diff --git a/doc/content/en/project/Security/_index.md b/doc/content/en/project/Security/_index.md
index dcac88517..baa55da93 100755
--- a/doc/content/en/project/Security/_index.md
+++ b/doc/content/en/project/Security/_index.md
@@ -1,7 +1,7 @@
 ---
 title: "Security"
 linkTitle: "Security"
-weight: 3
+weight: 10
 manualLink: https://www.apache.org/security/
 ---
 
diff --git a/doc/content/en/project/Thanks/_index.md b/doc/content/en/project/Thanks/_index.md
index 22db73752..b2ae7dff9 100755
--- a/doc/content/en/project/Thanks/_index.md
+++ b/doc/content/en/project/Thanks/_index.md
@@ -1,7 +1,7 @@
 ---
 title: "Thanks"
 linkTitle: "Thanks"
-weight: 7
+weight: 14
 manualLink: https://www.apache.org/foundation/thanks.html
 ---
 
diff --git a/doc/content/en/project/pmc onboarding guide/_index.md b/doc/content/en/project/pmc onboarding guide/_index.md
new file mode 100644
index 000000000..22d7545ed
--- /dev/null
+++ b/doc/content/en/project/pmc onboarding guide/_index.md	
@@ -0,0 +1,34 @@
+---
+title: "PMC onboarding guide"
+linkTitle: "PMC onboarding guide"
+weight: 6
+---
+
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+--> 
+
+1. Use https://whimsy.apache.org you can check that you got added to the PMC list properly
+2. Validate you are in the PMC group in JIRA and the Confluence Wiki
+3. Subscribe to private@avro.apache.org; you can use whimsy to do this for whatever email account you want, or send mail from that mail address to private-subscribe@
+4. You should have access also to https://reporter.apache.org which seeds our board reports
+5. You can now access and read the private list archive (for linking to vote threads, etc) at https://lists.apache.org/list.html?private@avro.apache.org
+6. Review the ASF PMC guides. There are a few, but you should re-read what the responsibilities are.
+7. The PMC keeps a set of valuable resources in https://svn.apache.org/repos/private/pmc
\ No newline at end of file