Skip to content

Commit

Permalink
Release core-0.2
Browse files Browse the repository at this point in the history
* Release core-0.2 merge commit
  • Loading branch information
libremente committed Mar 13, 2019
2 parents 46bb168 + 191a488 commit 558de14
Show file tree
Hide file tree
Showing 25 changed files with 668 additions and 951 deletions.
25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Changelog
All notable changes to this project will be documented in this file.

## [core-0.2] - 2019-03-11
### Added
- A new `countryExtensionVersion` key was added under each country-specific extension, in order to separate their versioning from the core.
- The `standalone` value for the `softwareType` key was deprecated in favor of more specific values: `standalone/mobile`, `standalone/iot`, `standalone/desktop`, `standalone/web`, `standalone/backend`, `standalone/other`

### Changed
- `intendedAudience/onlyFor` was renamed to `intendedAudience/scope` (with a different dictionary of values).
- `tags` was replaced by `categories` (with a different dictionary of values).
- BCP47 is now used for languages instead of ISO 639-2, thus keys under `description` will now look like `en` instead of `eng`
- `publiccode-yaml-version` was moved to `publiccodeYmlVersion` using camelCase
- `maintainance/contacts` is now mandatory only if `maintainance/type` is `internal` or `community`.
- All files ported to RST from previous MD

### Removed
- The `freeTags` key was removed.

## [core-0.1] - 2019-01-25
### Added
- Files for first release

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
94 changes: 68 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,33 @@
# The `publiccode.yml` standard

[![GitHub release](https://img.shields.io/github/release/italia/publiccode.yml.svg?style=plastic)](https://github.com/italia/publiccode.yml/releases)
[![Join the #publiccode channel](https://img.shields.io/badge/Slack%20channel-%23publiccode-blue.svg)](https://developersitalia.slack.com/messages/CAM3F785T)
[![Get invited](https://slack.developers.italia.it/badge.svg)](https://slack.developers.italia.it/)
[![Docs
Italia](https://docs.italia.it/media/static/projects/badges/passing.svg)](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)
[![Documentation](https://img.shields.io/badge/Documentation-Docs%20Italia-blue.svg)](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)

A metadata description standard for public software and policy repositories
that is easy to use both for developers and people with less technical
background, in order to make the software developed by Public Administrations
and Public Organisations easily discoverable.
> A metadata description standard for public software
**Latest release: [Version
0.1](https://github.com/italia/publiccode.yml/releases/latest)**
---

[See all versions](https://github.com/italia/publiccode.yml/releases)
## Table of Contents

This project follows the Semantic Versioning. For more information see
[SemVer.org](https://semver.org/).
- [Description](#description)
- [What is this file for](#what-this-file-is-for)
- [Documentation](#documentation)
- [Finding Projects](#finding-projects)
- [Versioning](#versioning)
- [Contributing](#contributing)
- [Authors](#authors)
- [License](#license)

Furthermore, the project uses branches and tags in the following way:
* The `master` branch contains the latest stable version of the standard.
* The `development` branch contains the improvements proposed for the next
version.
* GitHub's [release page](https://github.com/italia/publiccode.yml/releases)
contains all the released versions of the standard. Releases are done
following the tag version for consistency (e.g., tag v0.1 implies release
v0.1).
## Description

The PublicCode specification is developed by the [Italian Digital
Transformation Team](https://teamdigitale.governo.it) and the
[Authors](AUTHORS.md).
A metadata description standard for public software and policy repositories
that is easy to use both for developers and people with less technical
background, in order to make the software developed by Public Administrations
and Public Organisations easily discoverable.

## What this file is for

Expand Down Expand Up @@ -55,6 +55,15 @@ The `publiccode.yml` file format should both be able to easily be added to any
new project, as well as grow with the project as it expands beyond the original
context it was developed in.

## Documentation

This repository is structured in order to be compatible with the [Docs Italia](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)
platform. As such, the content in the relevant folders will be
compiled and rendered inside that platform. The `Docs Italia` platform is
able to handle different releases and localised versions of the same file
drawing from the document's GitHub repository. As such, the platform is to be
considered the default landing page for the project.

## Finding projects

Finding projects depends on how the search API is structured for every hosting
Expand All @@ -68,16 +77,49 @@ The Italian Digital Transformation Team is also working on providing a scanner
which looks for all publiccode files on all publicly accessible websites, and
exposing them as open data.

## Versioning

**Latest release:** [![GitHub release](https://img.shields.io/github/release/italia/publiccode.yml.svg?style=plastic)](https://github.com/italia/publiccode.yml/releases) [See all versions](https://github.com/italia/publiccode.yml/releases)

This project follows the Semantic Versioning. For more information see
[SemVer.org](https://semver.org/).

Furthermore, the project uses branches and tags in the following way:
* The `master` branch contains the latest stable version of the standard.
* The `development` branch contains the improvements proposed for the next
version.
* GitHub's [release page](https://github.com/italia/publiccode.yml/releases)
contains all the released versions of the standard. Releases are done
following the tag version for consistency.

However, since the repository contains both the core schema and the
country-specific ones, it is necessary to further refine the versioning.
As such, each update at the core and/or to a country-specific extension will be
tagged as follows:

> core:x.y.z/<cc>:a.b.c
where <cc> is the country code defined using one of the ISO 3166-1 alpha-2
codes.

This versioning schema is fundamental in this project since the
`publiccode.yml` file contains references to the core release in the
`publiccodeYmlVersion` key and each country-specific schema contains
a `version` key.

Examples of this versioning schema may be:

> * core:0.2/it:0.4
> * core:0.2/fr:1.1
## Contributing

Feel free to submit [Pull Requests and to file Issues](CONTRIBUTING.md).

This repository is structured in order to be compatible with the `Docs Italia`
platform. As such, the markdown content in the relevant folders will be
compiled and rendered on top of that platform. The `Docs Italia` platform is
able to handle different releases and localised versions of the same file
drawing from the document's GitHub repository. As such, the platform is to be
considered the default landing page for the project.
## Authors
The `publiccode.yml` specification is developed by the [Italian Digital
Transformation Team](https://teamdigitale.governo.it) and the
[Authors](AUTHORS.md).

## Licence

Expand Down
110 changes: 110 additions & 0 deletions docs/en/categories-list.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
.. _categories-list:

List of software categories
===========================

Here follows a controlled vocabulary of useful tags for categorizing the
software.

===
Tag
===
- accounting
- agile-project-management
- applicant-tracking
- application-development
- appointment-scheduling
- backup
- billing-and-invoicing
- blog
- budgeting
- business-intelligence
- business-process-management
- cad
- call-center-management
- cloud-management
- collaboration
- communications
- compliance-management
- contact-management
- content-management
- crm
- customer-service-and-support
- data-analytics
- data-collection
- data-visualization
- digital-asset-management
- digital-citizenship
- document-management
- donor-management
- e-commerce
- e-signature
- email-management
- email-marketing
- employee-management
- enterprise-project-management
- enterprise-social-networking
- erp
- event-management
- facility-management
- feedback-and-reviews-management
- financial-reporting
- fleet-management
- fundraising
- gamification
- geographic-information-systems
- grant-management
- graphic-design
- help-desk
- hr
- ide
- identity-management
- instant-messaging
- inventory-management
- it-asset-management
- it-development
- it-management
- it-security
- it-service-management
- knowledge-management
- learning-management-system
- marketing
- mind-mapping
- mobile-marketing
- mobile-payment
- network-management
- office
- online-booking
- online-community
- payment-gateway
- payroll
- predictive-analysis
- procurement
- productivity-suite
- project-collaboration
- project-management
- property-management
- real-estate-management
- remote-support
- resource-management
- sales-management
- seo
- service-desk
- social-media-management
- survey
- talent-management
- task-management
- taxes-management
- test-management
- time-management
- time-tracking
- translation
- video-conferencing
- video-editing
- visitor-management
- voip
- warehouse-management
- web-collaboration
- web-conferencing
- website-builder
- workflow-management
32 changes: 32 additions & 0 deletions docs/en/country.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
.. _`country-extension`:

Country-Specific Extensions
===========================

While the standard is structured to be meaningful on an international
level, there are additional information that can be added that makes
sense in specific countries, such as declaring compliance with local
laws or regulations. The provided extension mechanism is the usage of
country-specific sections.

All country-specific extensions are contained in a section named with
the two-letter lowercase `ISO 3166-1 alpha-2 country
code <https://it.wikipedia.org/wiki/ISO_3166-1_alpha-2>`__. For instance
``spid`` is a property for Italian software declaring whether the
software is integrated with the Italian Public Identification System.

If a software is compliant I will find:

.. code:: .yaml

it:
spid: yes

Notice that country-specific extensions within international sections
are not allowed. Countries that want to extend the format should add a
country-specific section instead.

Documentation for the keys contained in a country specific section is
maintained in separate files.

- Italy: :ref:`italia-extensions`.
6 changes: 3 additions & 3 deletions docs/en/example/publiccode.minimal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ tags:

developmentStatus: development

softwareType: "standalone"
softwareType: "standalone/desktop"

description:
eng:
en:
localisedName: medusa # Optional
genericName: Text Editor
shortDescription: >
Expand Down Expand Up @@ -43,4 +43,4 @@ maintenance:
localisation:
localisationReady: yes
availableLanguages:
- eng
- en
29 changes: 12 additions & 17 deletions docs/en/example/publiccode.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ name: Medusa
applicationSuite: MegaProductivitySuite
url: "https://example.com/italia/medusa.git"
landingURL: "https://example.com/italia/medusa"

isBasedOn: "https://github.com/italia/otello.git"
softwareVersion: "1.0"
releaseDate: "2017-04-15"
Expand All @@ -20,10 +19,9 @@ platforms:
- android
- ios

tags:
categories:
- content-management
- artificial-intelligence
- museum
- office

usedBy:
- Comune di Firenze
Expand All @@ -33,21 +31,19 @@ roadmap: "https://example.com/italia/medusa/roadmap"

developmentStatus: development

softwareType: "standalone"
softwareType: "standalone/desktop"

intendedAudience:
onlyFor:
- cities
- health-services
- it-ag-agricolo
scope:
- science-and-technology
countries:
- it
- de
unsupportedCountries:
- us

description:
eng:
en:
localisedName: Medusa
genericName: Text Editor
shortDescription: >
Expand All @@ -63,9 +59,6 @@ description:
documentation: "https://read.the.documentation/medusa/v1.0"
apiDocumentation: "https://read.the.api.doc/medusa/v1.0"

freeTags:
- an-english-tag

features:
- Very important feature
- Will run without a problem
Expand Down Expand Up @@ -104,10 +97,10 @@ maintenance:
localisation:
localisationReady: yes
availableLanguages:
- eng
- ita
- fra
- deu
- en
- it
- fr
- de

dependsOn:
open:
Expand All @@ -128,6 +121,8 @@ dependsOn:

it:

countryExtensionVersion: 0.1

conforme:
accessibile: yes
interoperabile: yes
Expand Down
Loading

0 comments on commit 558de14

Please sign in to comment.