Error when publishing shiny app to shinyapps.io: error error in value 3l (cond) there is no package called ‘shinythemes’’

Hello community,

when I try to deploy my shiny-app, which is running perfectly fine on my computer, I receive following error messages:

  1. In the browser panel, where the app should launch:

The application failed to start (exited with code 1).

error in value 3l (cond) there is no package called ‘shinythemes’
Ruft auf: local ... tryCatch -> tryCatchList -> tryCatchOne ->
Ausführung angehalten`

  1. in the deploy window of rstudio:

_Deployment completed: https://juliehofer.shinyapps.io/SOLA_Nachhaltigkeit/_
Warnmeldung:
In fileDependencies.R(file) :
Failed to parse C:/Users/julie/AppData/Local/Temp/RtmpGyrtli/file4f8c8da7177/app.R ; dependencies in this file will not be discovered.

The only package I'm using is shinythemes, which is installed and inserted with library(shinythemes).

I saved the app.R-file with the encoding "UTF-8" and the used csv.-files are encoded in the same format. The only special letters in the code are ä/ö/ü which should be covered in UTF-8.

I already tried to figure out according to following link what could be my problem:

unfortunately the connected link to github is not working anymore.

What I've done so far:

  • deinstall & reinstall r and rstudio (had one more error before, refering to missing ggplot2 package, which is not used in the app)

  • deleted shinytheme content and tried to deploy the app without theme, received same error

  • inserted shiny:: in front of every function because I read somewhere that someone fixed the deployment-issue with that

  • used packrat::status() what told me that:
    The following packages are used in your code, tracked by packrat, but no longer present in your library:
    _ from to_
    _ packrat 0.5.0 NA_
    _ shiny 1.2.0 NA_

    so I preformed packrat::restore, what is not working properly too:

Error in hash(descFile) : _
_ No DESCRIPTION file at path 'C:/Users/julie/Desktop/R/SOLA_Nachhaltigkeit/packrat/lib/x86_64-w64-mingw32/3.5.2/BH/DESCRIPTION'!

I fear that I destroy more than I fix, so hopefully someone can help me out :blush:

Here is my code:


# Libraries
library(shiny)
library(shinythemes)

# Umfragedaten (konvertiert zu UTF-8)
u18 = read.csv("umfrage2018.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
u17 = read.csv("umfrage2017.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
u16 = read.csv("umfrage2016.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")

# Anzahl Befragte
tn_u18 <- nrow(u18)
tn_u17 <- nrow(u17)
tn_u16 <- nrow(u16)

# Restliche Daten (konvertiert zu UTF-8)
next_sola = read.csv("next_sola.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
d17 = read.csv("daten2017.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
d16 = read.csv("daten2016.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
d15 = read.csv("daten2015.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")
d14 = read.csv("daten2014.csv", sep = ";", stringsAsFactors = FALSE, strip.white = TRUE, fileEncoding = "UTF-8")

# Define UI for app that draws a histogram ----
ui <- navbarPage(
  
  # App theme
  theme = shinythemes::shinytheme("cerulean"),
  
  # App title ----
  title = 'SOLA Stafette | Nachhaltigkeit',
  
  # Tab Panel 1********************************************************************************************** P1
  shiny::tabPanel('Fakten',
           # Titel und ASVZ Logo
           shiny::h1("Fakten zur SOLA-Stafette", shiny::img(src = "Sola_logo.png", height = 80, align = "right", inline = TRUE)),
           shiny::br(), shiny::br(),
           shiny::fluidRow(
             shiny::column(3, shiny::wellPanel(style = "background: orange",
                                               shiny::h4("- grösster Hochschulsportanlass der Schweiz", style = "color:white"),
                                               shiny::br(),
                                               shiny::h4("- Laufstafette mit 14 Teilstrecken zwischen 3.8 und 14 km", style = "color:white"),
                                               shiny::br(),
                                               shiny::h4("- Gesamtlänge von 116 km mit total 2620 Höhenmetern", style = "color:white"),
                                               shiny::br(),
                                               shiny::h4("- Über 700 langjährige Helfende", style = "color:white"),
                                               shiny::br(),
                                               shiny::h4("- Treuster Läufer startete an 43 von 44 Durchführungen", style = "color:white"),
                                               shiny::br(),
                                               shiny::h4("- zählt Jahr für Jahr rund 1000 Teams", style = "color:white"),
                                               shiny::br(), shiny::br(), shiny::br(), shiny::br()
                    )
             ),
             shiny::column(5,
                           shiny::br(),
                           shiny::h4(shiny::icon("map-marker-alt", "fa-2x"), "Ort:", shiny::HTML('&nbsp;'), shiny::textOutput("Orttext", inline = TRUE), style="display:inline"),
                           shiny::br(), shiny::br(),
                           shiny::h4(shiny::icon("hand-holding-usd", "fa-2x"),"Budget:", shiny::textOutput("Budgettext", inline = TRUE), style="display:inline"),
                           shiny::br(), shiny::br(),
                           shiny::h4(shiny::icon("users", "fa-2x"),"Teilnehmer an letzter Austragung:", shiny::textOutput("Teilnehmertext", inline = TRUE), style="display:inline"),
                           shiny::br(), shiny::br(),
                           shiny::h4(shiny::icon("calendar-alt", "fa-2x"),"Nächste SOLA-Stafette:", shiny::textOutput("nextsolatext", inline = TRUE), style="display:inline")
             ),
             shiny::column(2,shiny::wellPanel(
               shiny::h5("Der ASVZ hat seine Daten auf der Plattform", shiny::strong("NACHHALTIGE-EVENTS.CH"), "eingegeben. Für die Richtigkeit der Angaben ist allein der ASVZ zuständig."),
               shiny::img(src = "Nachhaltige_Events.png", height = 180, align = "right"),
               shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br(), shiny::br()
              )
             )
           )
           
  ),
  # Tab Panel 2********************************************************************************************** P2
  shiny::tabPanel('Zufriedenheit',
           # Titel und ASVZ Logo
           shiny::h1("Zufriedenheit der Teilnehmer", shiny::img(src = "Sola_logo.png", height = 80, align = "right", inline = TRUE)),
           shiny::br(), shiny::br(),
           shiny::fluidRow(
             shiny::column(3,
                           shiny::wellPanel(
                             shiny::h3('Anzeigen'),
                    #Input dropdown selection box
                    shiny::selectInput("selectyear_zufriedenheit", label = h4("Daten von Jahr:"), 
                         choices = list("2018" = 1, "2017" = 2, "2016" = 3), selected = 1),
                    shiny::h4("In dem gewählten Jahr haben", shiny::textOutput("utn_zufriedenheit", inline = TRUE), "Personen an der Umfrage teilgenommen.", inline = TRUE)
                     )
             ),
             shiny::column(5,
                  # plotoutput bar plot
                  shiny::h4('Allgemeine Zufriedenheit mit der SOLA-Stafette:'),
                  shiny::plotOutput("zufriedenheitbar"),
                  shiny::hr(),
                 # plotoutput bar plot
                 shiny::h4('Teilnahmehäufigkeit'),
                 shiny::plotOutput("teilnahmebar")
            ),
            shiny::column(2, shiny::wellPanel(
              shiny::h5("Die SOLA-Teams werden jedes Jahr zu verschiedenen Themen befragt."),
              shiny::br(),
              shiny::h5("Die Teilnahmehäufigkeit und die", strong("HOHE ALLGEMEINE ZUFRIEDENHEIT (Note 5.6)"), "zeigen die Beliebtheit der SOLA auf.", inline = TRUE),
              shiny::br(),
              shiny::h5("Auch Mithelfen an der SOLA-Stafette scheint Freude zu bereiten: Ein Helfer ist bereits seit 42 Jahren Jahr für Jahr im SOLA-Einsatz."),
              shiny::br(),
              shiny::h4(shiny::icon("grin-alt", "fa-8x"), align="center")
            )
           )
          ) 
  ),
  # Tab Panel 3********************************************************************************************** P3
 
  # Tab Panel 4********************************************************************************************** P4

  # Tab Panel 5********************************************************************************************** P5

  # Tab Panel 6********************************************************************************************** P6
 
     
  # Tab Panel 7********************************************************************************************** P7
  shiny::tabPanel('Sicherheit',
           # Titel und ASVZ Logo
           shiny::h1("Fakten zur SOLA-Stafette", shiny::img(src = "Sola_logo.png", height = 80, align = "right", inline = TRUE)),
           shiny::br(), shiny::br(),
           shiny::fluidRow(
             shiny::column(3,
                           shiny::wellPanel(
                      #Input dropdown selection box
                             shiny::selectInput("selectyear_unfall", label = h4("Gesundheitseinsätze von Jahr:"), 
                                  choices = list("2017" = 1, "2016" = 2, "2015" = 3), selected = 1)
                    )
             ),
             shiny::column(6,
                           shiny::fluidRow(
                             shiny::column(3),
                             shiny::column(3, shiny::wellPanel(style = "background:#0079C2", 
                                          shiny::h3(shiny::textOutput("jahrlabel1"), style = "color:white; fontweight:bold", inline = TRUE))
                      ),
                      shiny::column(3, shiny::wellPanel(style = "background:#0079C2", 
                                    shiny::h3(shiny::textOutput("jahrlabel2"), style = "color:white; fontweight:bold", inline = TRUE))
                      )
                    ),
                    shiny::fluidRow(
                      shiny::column(3,
                                    shiny::img(src = "unfall_leicht.png", height = 80, inline = TRUE)
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("uleicht_text1")))
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("uleicht_text2")))
                      )
                    ),
                    shiny::fluidRow(
                      shiny::column(3,
                                    shiny::img(src = "unfall_mittel.png", height = 80, inline = TRUE)
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("umittel_text1")))
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("umittel_text2")))
                      )
                    ),
                    shiny::fluidRow(
                      shiny::column(3,
                             img(src = "unfall_schwer.png", height = 80, inline = TRUE)
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("uschwer_text1")))
                      ),
                      shiny::column(3,
                                    shiny::wellPanel(shiny::h4(shiny::textOutput("uschwer_text2")))
                      )
                    )
             ),
             shiny::column(2,
              shiny::wellPanel(
               shiny::h5("Die Position der erfahrenen Sicherheitsmountainbiker
                         (Spitze und Schluss) sowie der Ambulanz und der Sanitätsmotorräder werden durch ein für die SOLA
                         entwickeltes Trackingsystem an die", shiny::strong("EINSATZZENTRALE"), "übertragen.", inline = TRUE),
               shiny::br(),
               shiny::h5("Von dort aus stellt ein", shiny::strong("VERBINDUNGSOFFIZIER"), "von Schutz & Rettung Zürich die
                         enge Zusammenarbeit mit Polizei und Spitälern sicher.", inline = TRUE),
               shiny::br(),
               shiny::h4(shiny::icon("ambulance", "fa-3x"), align="center")
                    )
             )
           )
  )
)
# Define server logic required to draw a histogram ---------------------------------------------------------------- SERVER FUNCTIONS
server <- function(input, output) {
  
  # Tab Panel 1********************************************************************************************** P1 server
  output$Orttext <- renderText({d17$Ort})
  output$Budgettext <- renderText({d17$Budget})
  output$Teilnehmertext <- renderText({d17$Teilnehmende})
  output$nextsolatext <- renderText({next_sola$next_sola})
  
  # Tab Panel 2********************************************************************************************** P2 server
  output$utn_zufriedenheit <- renderText({
    if (is.null(input$selectyear_zufriedenheit))
      return(NULL)
    if (input$selectyear_zufriedenheit == "1") {tn_u18
    } else if (input$selectyear_zufriedenheit == "2") {tn_u17
    } else if (input$selectyear_zufriedenheit == "3") {tn_u16
    }
  })
  
  output$zufriedenheitbar <- renderPlot({
   
    percent_zufriedenheit18 <- round(table(u18$SOLA_Zufriedenheit)/sum(table(u18$SOLA_Zufriedenheit)) * 100, digits = 2)
    percent_zufriedenheit18 <- paste(percent_zufriedenheit18, "%")
    
    percent_zufriedenheit17 <- round(table(u17$SOLA_Zufriedenheit)/sum(table(u17$SOLA_Zufriedenheit)) * 100, digits = 2)
    percent_zufriedenheit17 <- paste(percent_zufriedenheit17, "%")
    
    percent_zufriedenheit16 <- round(table(u16$SOLA_Zufriedenheit)/sum(table(u16$SOLA_Zufriedenheit)) * 100, digits = 2)
    percent_zufriedenheit16 <- paste(percent_zufriedenheit16, "%")
    
    l_zufriedenheit18 <-c(percent_zufriedenheit18)
    l_zufriedenheit17 <-c(percent_zufriedenheit17)
    l_zufriedenheit16 <-c(percent_zufriedenheit16)
    
    if (is.null(input$selectyear_zufriedenheit))
      return(NULL)
    
    if (input$selectyear_zufriedenheit == "1") {
      bp <- barplot(table(u18$SOLA_Zufriedenheit), border = NA, col = "orange", xlab = "Allgemeine Zufriedenheit mit der SOLA-Stafette (Schulnoten: 6 = sehr gut, 1 = ungenügend)", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, l_zufriedenheit18, cex=1, pos=3)
    } else if (input$selectyear_zufriedenheit == "2") {
      bp <- barplot(table(u17$SOLA_Zufriedenheit), border = NA, col = "orange", xlab = "Allgemeine Zufriedenheit mit der SOLA-Stafette (Schulnoten: 6 = sehr gut, 1 = ungenügend)", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, l_zufriedenheit17, cex=1, pos=3)
    }else if (input$selectyear_zufriedenheit == "3") {
      bp <- barplot(table(u16$SOLA_Zufriedenheit), border = NA, col = "orange", xlab = "Allgemeine Zufriedenheit mit der SOLA-Stafette (Schulnoten: 6 = sehr gut, 1 = ungenügend)", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, l_zufriedenheit16, cex=1, pos=3)
    }
  })
  
  output$teilnahmebar <- renderPlot({
    # Zeilen Ordnen für Barplots
    u18$Teilnahme_anzahl <- factor(u18$Teilnahme_anzahl,levels = c('1x', '2 - 4x', '5 - 10x', '11 - 25x','> 25x'))
    u17$Teilnahme_anzahl <- factor(u17$Teilnahme_anzahl,levels = c('1x', '2 - 4x', '5 - 10x', '11 - 25x','> 25x'))
    u16$Teilnahme_anzahl <- factor(u16$Teilnahme_anzahl,levels = c('1x', '2 - 4x', '5 - 10x', '11 - 25x','> 25x'))
    
    percent_teilnahmeanzahl18 <- round(table(u18$Teilnahme_anzahl)/sum(table(u18$Teilnahme_anzahl)) * 100, digits = 2)
    percent_teilnahmeanzahl18 <- paste(percent_teilnahmeanzahl18, "%")
    
    percent_teilnahmeanzahl17 <- round(table(u17$Teilnahme_anzahl)/sum(table(u17$Teilnahme_anzahl)) * 100, digits = 2)
    percent_teilnahmeanzahl17 <- paste(percent_teilnahmeanzahl17, "%")
    
    percent_teilnahmeanzahl16 <- round(table(u16$Teilnahme_anzahl)/sum(table(u16$Teilnahme_anzahl)) * 100, digits = 2)
    percent_teilnahmeanzahl16 <- paste(percent_teilnahmeanzahl16, "%")
    
    # Barplots
    if (is.null(input$selectyear_zufriedenheit))
      return(NULL)
    
    if (input$selectyear_zufriedenheit == "1") {
      bp <- barplot(table(u18$Teilnahme_anzahl), border = NA, col = "orange", xlab = "Teilnahmehäufigkeit", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, percent_teilnahmeanzahl18, cex=1, pos=3)
    } else if (input$selectyear_zufriedenheit == "2") {
      bp <- barplot(table(u17$Teilnahme_anzahl), border = NA, col = "orange", xlab = "Teilnahmehäufigkeit", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, percent_teilnahmeanzahl17, cex=1, pos=3)
    }else if (input$selectyear_zufriedenheit == "3") {
      bp <- barplot(table(u16$Teilnahme_anzahl), border = NA, col = "orange", xlab = "Teilnahmehäufigkeit", ylab = "Anzahl Antworten", las = 1)
      text(bp, 0, percent_teilnahmeanzahl16, cex=1, pos=3)
    }
  })
  
  # Tab Panel 3********************************************************************************************** P3 server

  output$utn_transport <- renderText({
    if (is.null(input$selectyear_transport))
      return(NULL)
    if (input$selectyear_transport == "1") {tn_u18
    } else if (input$selectyear_transport == "2") {tn_u17
    } else if (input$selectyear_transport == "3") {tn_u16
    }
  })
  
  output$anreisebar <- renderPlot({
    # Labels erstellen für Prozentangabe auf Balken
    percent_verkehr18 <- round(table(u18$Verkehrsmittel)/sum(table(u18$Verkehrsmittel)) * 100, digits = 2)
    percent_verkehr18 <- paste(percent_verkehr18, "%")
    
    percent_verkehr17 <- round(table(u17$Verkehrsmittel)/sum(table(u17$Verkehrsmittel)) * 100, digits = 2)
    percent_verkehr17 <- paste(percent_verkehr17, "%")
    
    percent_verkehr16 <- round(table(u16$Verkehrsmittel)/sum(table(u16$Verkehrsmittel)) * 100, digits = 2)
    percent_verkehr16 <- paste(percent_verkehr16, "%")
    
    # Barplots
    if (is.null(input$selectyear_transport))
      return(NULL)
    
    if (input$selectyear_transport == "1") {
      op <- par(mar=c(12,4,4,2)) 
      bp <- barplot(table(u18$Verkehrsmittel), border = NA, col = "orange", xlab = "", ylab = "Anzahl Antworten", las = 2)
      text(bp, 0, percent_verkehr18, cex=1, pos=3)
      rm(op)
    } else if (input$selectyear_transport == "2") {
      op <- par(mar=c(12,4,4,2)) 
      bp <- barplot(table(u17$Verkehrsmittel), border = NA, col = "orange", xlab = "", ylab = "Anzahl Antworten", las = 2)
      text(bp, 0, percent_verkehr17, cex=1, pos=3)
      rm(op)
    }else if (input$selectyear_transport == "3") {
      op <- par(mar=c(12,4,4,2)) 
      bp <- barplot(table(u16$Verkehrsmittel), border = NA, col = "orange", xlab = "", ylab = "Anzahl Antworten", las = 2)
      text(bp, 0, percent_verkehr16, cex=1, pos=3)
      rm(op)
    }
  })
  
  
  # Tab Panel 4********************************************************************************************** P4 server

  output$beschaffungpie <- renderPlot({
    if (is.null(input$selectyear_beschaffung))
      return(NULL)
    if (input$selectyear_beschaffung == "1") {

        region <- d17$Beschaffung_Region
        schweiz <- (d17$Beschaffung_Schweiz-d17$Beschaffung_Region)
        ausland <- d17$Beschaffung_Ausland
        x <- c(region, schweiz, ausland)
        labels <- c( "Region Zürich", "Schweiz","Ausland")
        colorspie = c("#0079C2", "#4FA1D3", "orange") 

        pie(x, labels, init.angle = -70, clockwise = TRUE, col=colorspie)
    } else if (input$selectyear_beschaffung == "2") {

        region <- d16$Beschaffung_Region
        schweiz <- (d16$Beschaffung_Schweiz-d17$Beschaffung_Region)
        ausland <- d16$Beschaffung_Ausland
        x <- c(region, schweiz, ausland)
        labels <- c( "Region Zürich", "Schweiz","Ausland")
        colorspie = c("#0079C2", "#4FA1D3", "orange") 
   
        pie(x, labels, init.angle = -70, clockwise = TRUE, col=colorspie)
    } else if (input$selectyear_beschaffung == "3") {

        region <- d15$Beschaffung_Region
        schweiz <- (d15$Beschaffung_Schweiz-d17$Beschaffung_Region)
        ausland <- d15$Beschaffung_Ausland
        x <- c(region, schweiz, ausland)
        labels <- c( "Region Zürich", "Schweiz","Ausland")
        colorspie = c("#0079C2", "#4FA1D3", "orange") 
        # Kuchendiagramm plotten
        pie(x, labels, init.angle = -70, clockwise = TRUE, col=colorspie)
    }
  })

  output$bregiontext <- renderText({
    if (is.null(input$selectyear_beschaffung))
      return(NULL)
    if (input$selectyear_beschaffung == "1") {d17$Beschaffung_Region
    } else if (input$selectyear_beschaffung == "2") {d16$Beschaffung_Region
    } else if (input$selectyear_beschaffung == "3") {d15$Beschaffung_Region
    }
  })
  output$bschweiztext <- renderText({
    if (is.null(input$selectyear_beschaffung))
      return(NULL)
    if (input$selectyear_beschaffung == "1") {d17$Beschaffung_Schweiz
    } else if (input$selectyear_beschaffung == "2") {d16$Beschaffung_Schweiz
    } else if (input$selectyear_beschaffung == "3") {d15$Beschaffung_Schweiz
    }
  })
  output$bauslandtext <- renderText({
    if (is.null(input$selectyear_beschaffung))
      return(NULL)
    if (input$selectyear_beschaffung == "1") {d17$Beschaffung_Ausland
    } else if (input$selectyear_beschaffung == "2") {d16$Beschaffung_Ausland
    } else if (input$selectyear_beschaffung == "3") {d15$Beschaffung_Ausland
    }
  })
  
  # Tab Panel 5********************************************************************************************** P5 server

  output$abfalltotaltext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_Total
    } else if (input$selectyear_abfall == "2") {d16$Abfall_Total
    } else if (input$selectyear_abfall == "3") {d15$Abfall_Total
    }
  })
  output$abfallppersontext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_tpPerson
    } else if (input$selectyear_abfall == "2") {d16$Abfall_tpPerson
    } else if (input$selectyear_abfall == "3") {d15$Abfall_tpPerson
    }
  })
  output$recyclingratetext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_rRate
    } else if (input$selectyear_abfall == "2") {d16$Abfall_rRate
    } else if (input$selectyear_abfall == "3") {d15$Abfall_rRate
    }
  })
  output$recyclingpettext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_Pet
    } else if (input$selectyear_abfall == "2") {d16$Abfall_Pet
    } else if (input$selectyear_abfall == "3") {d15$Abfall_Pet
    }
  })
  output$recyclingalutext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_Alu
    } else if (input$selectyear_abfall == "2") {d16$Abfall_Alu
    } else if (input$selectyear_abfall == "3") {d15$Abfall_Alu
    }
  })
  output$recyclingglastext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_Glas
    } else if (input$selectyear_abfall == "2") {d16$Abfall_Glas
    } else if (input$selectyear_abfall == "3") {d15$Abfall_Glas
    }
  })
  output$abfallresttext <- renderText({
    if (is.null(input$selectyear_abfall))
      return(NULL)
    if (input$selectyear_abfall == "1") {d17$Abfall_Rest
    } else if (input$selectyear_abfall == "2") {d16$Abfall_Rest
    } else if (input$selectyear_abfall == "3") {d15$Abfall_Rest
    }
  })
 
  # Tab Panel 6********************************************************************************************** P6 server

  output$vegitext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpfl_Vegi
    } else if (input$selectyear_verpflegung == "2") {d16$Verpfl_Vegi
    } else if (input$selectyear_verpflegung == "3") {d15$Verpfl_Vegi
    }
  })
  output$pflanzlichtext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpfl_Pflanzlich
    } else if (input$selectyear_verpflegung == "2") {d16$Verpfl_Pflanzlich
    } else if (input$selectyear_verpflegung == "3") {d15$Verpfl_Pflanzlich
    }
  })
  output$biotext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpfl_Bio
    } else if (input$selectyear_verpflegung == "2") {d16$Verpfl_Bio
    } else if (input$selectyear_verpflegung == "3") {d15$Verpfl_Bio
    }
  })
  output$wassertext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpfl_Wassergünstig
    } else if (input$selectyear_verpflegung == "2") {d16$Verpfl_Wassergünstig
    } else if (input$selectyear_verpflegung == "3") {d15$Verpfl_Wassergünstig
    }
  })
  output$regionaltext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpf_Regional
    } else if (input$selectyear_verpflegung == "2") {d16$Verpf_Regional
    } else if (input$selectyear_verpflegung == "3") {d15$Verpf_Regional
    }
  })
  output$saisonaltext <- renderText({
    if (is.null(input$selectyear_verpflegung))
      return(NULL)
    if (input$selectyear_verpflegung == "1") {d17$Verpfl_Saisonal
    } else if (input$selectyear_verpflegung == "2") {d16$Verpfl_Saisonal
    } else if (input$selectyear_verpflegung == "3") {d15$Verpfl_Saisonal
    }
  })
  
  # Tab Panel 7********************************************************************************************** P7 server
 
  output$jahrlabel1 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {"2017"
    } else if (input$selectyear_unfall == "2") {"2016"
    } else if (input$selectyear_unfall == "3") {"2015"
    }
  })
  output$jahrlabel2 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {"2016"
    } else if (input$selectyear_unfall == "2") {"2015"
    } else if (input$selectyear_unfall == "3") {"2014"
    }
  })
  output$uleicht_text1 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d17$Unfall_leicht
    } else if (input$selectyear_unfall == "2") {d16$Unfall_leicht
    } else if (input$selectyear_unfall == "3") {d15$Unfall_leicht
    }
  })
  output$uleicht_text2 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d16$Unfall_leicht
    } else if (input$selectyear_unfall == "2") {d15$Unfall_leicht
    } else if (input$selectyear_unfall == "3") {"keine Angabe"
    }
  })
  output$umittel_text1 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d17$Unfall_mittel
    } else if (input$selectyear_unfall == "2") {d16$Unfall_mittel
    } else if (input$selectyear_unfall == "3") {d15$Unfall_mittel
    }
  })
  output$umittel_text2 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d16$Unfall_mittel
    } else if (input$selectyear_unfall == "2") {d15$Unfall_mittel
    } else if (input$selectyear_unfall == "3") {"keine Angabe"
    }
  })
  output$uschwer_text1 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d17$Unfall_schwer
    } else if (input$selectyear_unfall == "2") {d16$Unfall_schwer
    } else if (input$selectyear_unfall == "3") {d15$Unfall_schwer
    }
  })
  output$uschwer_text2 <- renderText({
    if (is.null(input$selectyear_unfall))
      return(NULL)
    if (input$selectyear_unfall == "1") {d16$Unfall_schwer
    } else if (input$selectyear_unfall == "2") {d15$Unfall_schwer
    } else if (input$selectyear_unfall == "3") {"keine Angabe"
    }
  })
}

shinyApp(ui = ui, server = server)

I found the solution: turn app.r into ui.r and server.r in all new directory.

Glad that work around helped.

I'm still curious why the app.R failed to parse the dependencies. @jonathan any ideas? Could the deploy be made to fail if the dependencies fail to parse in app.R/ui.R/server.R? Could more information about why the parse failed be output by default (presumably more is available if the tracing option is enabled)?

Yes, if memory serves we won't deploy if we can't figure out which packages are required.

I'm curious why this works since there's very little difference in these deployment mechanisms! Possibly a transient encoding issue in the original app.R?

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.