Help Me ! Your app is too large to publish

Due to several limitations, I am unable to distribute the App.

Could you tell me what the restriction is?

Remove that component, please.

How much more must I delete? to be able to keep going

I’m not sure what the Components limit is.

Is there a figure that indicates the present app’s size in comparison to the app’s size that is a limitation?

Thank You :pray: :pray: :pray:

1 Like

There is an article in the documentation

You should also be aware of the limits for apps depending on your subscription level

App Restrictions I’m still within the defined parameters.

But… how do I know if I’m close to the limit for constructing components or the size of the entire app?

1632476793114

It must be something to do with the other issues below - not aware that there is a way of checking the sizes of these within the glide builder.

Have you gone through all of these :arrow_down:???

1 Like

Here’s a guide to the problem that I don’t know how many components to start deleting, even if it doesn’t exceed the app’s requirements.

The column data used to calculate each of my sheets is huge.

So I don’t have a point of reference on how much to delete them.

Video Link

I had a look at your video. Those were quite a few GSheets and columns! :sweat_smile:

Your app seems quite big so any attempt to fix this will probably be quite time consuming for you. I think you need to be clear from the outset if the issue lies in the data (the tables) or in the display (the number of tabs, components, options, maybe additional HTML/CSS, etc.).

If you don’t find any answer in the forum, I would submit a ticket to support so they can put you in the right direction: data or UI. Support team.

If it’s data, you probably know what to do: migrate whatever you can from GS to GT.

I’m curious. You never published your app as you were building it? You went from zero to full-blown app without ever testing it in a live environment?

1 Like

I’ve been developing and publishing it until my app v.1 stops publishing without any warning messages.

My app v.1 stopped auto-publishing on August 26th.

And I did not manage anything in App V.1 again until a moment ago when I went to look in App V.1 Error notification system.

So I made a duplicate app v.1 came out as an app v.2 for further development without press release.

And I have sent this issue to the support team. He doesn’t seem to provide instructions on how to fix App v.1.

Until I press publish App v.2 that I know that there is an error message.

To know that App V.1 - V.2 has a size that is larger than the limit.

**I only have 2 CSS code and this is the sample code I use.

<pre><span><style>

div[id*='screenScrollView'] > div > :nth-child(12) {
margin-left:0px;
transform: translateY(20%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(24) {
margin-top:-360px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:55px;
}

div[id*='screenScrollView'] > div > :nth-child(13) {
margin-left:0px;
transform: translateY(110%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(25) {
margin-top:0px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(14) {
margin-left:0px;
transform: translateY(190%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(26) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(15) {
margin-left:0px;
transform: translateY(275%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(27) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(16) {
margin-left:0px;
transform: translateY(355%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(28) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(17) {
margin-left:0px;
transform: translateY(435%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(29) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(18) {
margin-left:0px;
transform: translateY(520%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(30) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(19) {
margin-left:0px;
transform: translateY(605%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(31) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(20) {
margin-left:0px;
transform: translateY(685%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(32) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(21) {
margin-left:0px;
transform: translateY(770%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(33) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(22) {
margin-left:0px;
transform: translateY(860%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(34) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}

div[id*='screenScrollView'] > div > :nth-child(23) {
margin-left:0px;
transform: translateY(940%);
width:50%;
height:30px;
}

/* Text Entry (2nd component) */
div[id*='screenScrollView'] > div > :nth-child(35) {
margin-top:-5px;
margin-left:60%;
transform: translateX(-20%);
width:50%;
height:60px;
}
</style></span></pre>
<pre><span><style>

[data-test="app-hr"] {
background-color: rgb(246, 246, 246);
padding-left:0px;
padding-right:0px;
}

[data-test="app-hr"]:after {
content: "";
position:relative;
top:-30px;
height:20px;
border-bottom-right-radius: 15px;
border-bottom-left-radius: 15px;
background:#fff;
box-shadow: 0 3px 0 0 rgb(226, 226, 226);
z-index:0 !important;
}

[data-test="app-hr"]:before {
content: "";
position:relative;
top:30px;
height:20px; 
border-top-right-radius: 15px;
border-top-left-radius: 15px;
box-shadow: 0 -1px 0 0 rgb(226, 226, 226);
background:#fff;
z-index:0 !important;
}

</style></span></pre>

If the Support team can tell me I created

  • column relations
  • column Template
  • column Lookup
  • column Math
  • column If - Then - Else

beyond the limit This makes the app’s overall size too large.

I’m going to have to delete these columns or find a new way to manage them.

Hola @l3oy8231

Any chance that you can combine some of your functionalities?

Do you have any independent screens? If so, could you change them?

Hi @SantiagoPerez

I’m currently doing a lot of deleting trials to check if it can be published.

Yes, I have a number of independent screens, I’ll try removing them one by one.

1 Like

We discovered why this is happening more frequently lately, and will have a fix next week to lower app sizes.

6 Likes

I also had the same problem but I published so I was not affected

On this matter,
I have been developing my app for over a year. Along the way many actions leading to new screens changed and I have no way to access them accept see them in the “find all uses”.
I would like to clean up my app and delete all unnecessary screens and components.
I believe that effects my app performance.
Is there a way to do that?

1 Like

Find all uses is the best way that I know. It can be tedious, but it’s worth the effort.
One thing I have found when using find all uses to do housekeeping, is that it’s better to start at the last column in a table and work your way backwards, as you generally find less dependancies to deal with that way.

4 Likes

what happens to screens and component of data that was deleted entirely from GS?

I think that depends on whether or not you leave the column headers. If they are still there, then I’d expect that all screens and computed columns would remain intact. But if you also remove the column headers, then Glide should detect that the next time it syncs and give you a warning that it needs to remove the associated components.

1 Like

Then I guess that clean up is done automatically by Glide?
Can we be sure that unrelated screens and components aren’t left as “trash” in the app?

1 Like

Sorry, I can’t answer that with any degree of certainty.
I would assume that if a component is no longer referenced anywhere in the app, then it would essentially “disappear”. But I think a definitive answer on this would need to come from Glide Support/Engineering.