Giter VIP home page Giter VIP logo

publisher's Introduction

Publisher

Publisher is sometimes referred to as "mainstream publisher".

Live examples

Retired formats

  • Campaign
  • Programme
  • Video
  • Licence (Migrated to Specialist Licence Finder)

Removed formats

  • Business Support - used to be retired, and the documents remained visible, now they're fully removed as editions and no longer visible in the app (although the artefacts do still exist). They have been fully migrated to specialist-publisher.

Nomenclature

  • Artefact: a document on GOV.UK.

Technical documentation

This is a Rails application and should follow our Rails app conventions.

You can use the GOV.UK Docker environment to run the application and its tests with all the necessary dependencies. Follow the usage instructions to get started.

Use GOV.UK Docker to run any commands that follow.

Testing

The default rake task runs all the tests:

bundle exec rake

State machine

Maps out the transitions between states for the Edition class. These transitions are defined in the workflow module. A diagram of the current state machine can be seen here: state machine diagram. The diagram can be (re)generated using the state_machines-graphviz gem, by doing:

bundle exec rake state_machines:draw CLASS=Edition TARGET=docs

This will generate a diagram in the docs/state_machines folder.

Querying the database of a deployed publisher app

Publisher stores its data in DocumentDB, which can't be queried using the instructions detailed in the GOV.UK developer docs. Instead, follow these instructions for querying the database.

Feature flags

For details on how feature flags are managed in Publisher, see the feature flags documentation.

Adding promotions to Completed Transactions

For instructions on how to add a new type of promotion to Completed Transactions, see the "adding a promotion" documentation.

Further documentation

Working with Service Sign In pages

These pages do not have an admin interface and are instead managed through rake tasks.

See the README for more details.

Licence

MIT License

publisher's People

Contributors

alext avatar barrucadu avatar beccapearce avatar benjamineskola avatar bishboria avatar brucebolt avatar cbaines avatar craigw avatar daibach avatar davidgisbey avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar dhwthompson avatar emmabeynon avatar fofr avatar h-lame avatar jamiecobbett avatar jordanhatch avatar jystewart avatar kevindew avatar mtaylorgds avatar murilodalri avatar partiallyblind avatar sihugh avatar steventux avatar techbelly avatar theseanything avatar thomasleese avatar threedaymonk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

publisher's Issues

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "mongo":
  In snapshot (Gemfile.lock):
    mongo (= 2.4.3)

  In Gemfile:
    mongo (= 2.4.3)

    mongoid (>= 6.2.1, <= 7.0.2) was resolved to 6.3.0, which depends on
      mongo (>= 2.5.0, < 3.0.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

Bundler could not find compatible versions for gem "mongoid":
  In Gemfile:
    mongoid (>= 6.2.1, <= 7.0.2)

    kaminari-mongoid (= 1.0.1) was resolved to 1.0.1, which depends on
      mongoid

    mongoid_rails_migrations was resolved to 1.1.0, which depends on
      mongoid (>= 4.0.0)

Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "jasmine-core":
  In snapshot (Gemfile.lock):
    jasmine-core (= 2.5.2)

  In Gemfile:
    jasmine-core (= 2.5.2)

    jasmine (>= 2.5.2, <= 3.3.0) was resolved to 2.6.0, which depends on
      jasmine-core (>= 2.6.0, < 3.0.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Issues when removing all parts from a guide

According to the content schema, parts of a guide are optional. This would mean a guide could have no content and that seems wrong.

When I first tested this on 20 Apr, I had problems previewing content:

  1. Remove a single part from a guide
  2. Save
  3. Try to preview

This preview failed and the draft stack told me "Page not found" I also tried the same but publishing at the end, also "Page not found".

During this time, when I removed all parts from a guide and hit save, the page told me the guide had saved successfully, and when coming back to it I could see there were no parts in the document.

Today, Apr 21, I tried this again to see if preview was working. Following the same steps I could see that removing a single part and saving, that parts was removed and I could see the draft on the draft stack.

However โ€“ when I tried to remove all parts the application responded differently. The form would not save, the inspector showed me that the POST request to remove all parts was 404ing.

screen shot 2017-04-21 at 10 10 21
screen shot 2017-04-21 at 10 10 47

Get started button icon position on mobile breakpoint

The icon on the get started button is cut off on the mobile breakpoint.

Although there is a specific background-position for this breakpoint, it is is set to 110%.
I would suggest changing to something more like 104% for it to be centred inside the right hand padding.

getstarted-button

Configuration for asset-manager API

I'm trying to get Publisher to work together with asset-manager, but having problems:

Summary:

  • Publisher talks to the asset manager via the gds-api-adapters gem.
  • The README for that gem states that authentication is only used for Panopticon.
  • Publisher does not set any options for the asset manager API adapter in config/initializers/gds_api.rb; no bearer token, no basic auth. gds-api-adapters doesn't provide any defaults, as it does for panopticon.
  • However, asset-manager responds with 401 unauthorized responses when publisher asks for things, so it's obviously expecting some auth config somewhere.

This implies that some configuration is missing, possibly being written into the app at deploy time.

Is this the case, and if so, what is it that's missing? What is asset-manager expecting to receive, and does it similarly have configuration written at deploy time for this?

Bundler can't find some of the locked gems

The first error is:

Could not find bson_ext-1.4.1 in any of the sources

After a little investigation it looks like the following gems listed in Gemfile.lock have been yanked from rubygems.org. I didn't try to work out why they were yanked.

Finally, are we happy to use Github issues to report these sort of problems?

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependencies.

As a result, Dependabot couldn't update any of your dependencies.

This could have been caused by a git reference having been deleted at the source, by an out-of-sync lockfile, or by a bug in Dependabot.

To help diagnose the issue, please try running bundle update --patch locally. If no errors occur, get in touch and we'll help dig into it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Upgrading select2-rails to 4 breaks the selection box

Regarding #708, when testing on integration this breaks the functionality of the selection box. It should be noted that the e2e tests and the unit tests are both showing as passing for this upgrade.

Before (other names removed from screenshot):

screen shot 2017-12-29 at 10 13 36

After:

screen shot 2017-12-29 at 10 13 47

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "mongo":
  In snapshot (Gemfile.lock):
    mongo (= 2.4.3)

  In Gemfile:
    mongo (= 2.4.3)

    mongoid (>= 6.2.1, <= 7.0.2) was resolved to 6.3.0, which depends on
      mongo (>= 2.5.0, < 3.0.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

Bundler could not find compatible versions for gem "mongoid":
  In Gemfile:
    mongoid (>= 6.2.1, <= 7.0.2)

    kaminari-mongoid (= 1.0.1) was resolved to 1.0.1, which depends on
      mongoid

    mongoid_rails_migrations was resolved to 1.1.0, which depends on
      mongoid (>= 4.0.0)

Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "jasmine-core":
  In snapshot (Gemfile.lock):
    jasmine-core (= 2.5.2)

  In Gemfile:
    jasmine-core (= 2.5.2)

    jasmine (>= 2.5.2, <= 3.3.0) was resolved to 2.6.0, which depends on
      jasmine-core (>= 2.6.0, < 3.0.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "jasmine-core":
  In snapshot (Gemfile.lock):
    jasmine-core (= 2.5.2)

  In Gemfile:
    jasmine-core (= 2.5.2)

    jasmine (>= 2.5.2, <= 3.3.0) was resolved to 2.6.0, which depends on
      jasmine-core (>= 2.6.0, < 3.0.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "warden-oauth2":
  In Gemfile:
    gds-sso (~> 13.6) was resolved to 13.6.0, which depends on
      warden-oauth2 (~> 0.0.1)

Could not find gem 'warden-oauth2 (~> 0.0.1)', which is required by gem 'gds-sso (~> 13.6)', in any of the sources.

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

You can mention @dependabot in the comments below to contact the Dependabot team.

Accessibility issues with the sign-in pages

Hi Publisher team ๐Ÿ‘‹

There's a few accessibility issues with the sign in pages. Example, example 2.

I'm not sure how to report (posted a message on cross gov slack), so raising here.
Screenshot 2022-03-03 at 17 16 00

Issues:

  1. Missing Error: in page title when in error
  2. Error summary isn't focused on page load
  3. Error summary is using a negative contraction
  4. The markup for the radios looks like it needs review - there's a fieldset inside a fieldset.
  5. I don't think the error message next to the radios is actually semantically linked in any way to the question. On the design system markup, the fieldset references the error. I can't see that happening here.

General design stuff:

  1. The error styling on the radios is incomplete

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.