You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@royale.apache.org by Brian Raymes <br...@teotech.com> on 2021/01/12 18:01:09 UTC

RE: [EXTERNAL] CSS & JS file versioning

As others have stated, there are other ways to do this. Here is how I’m doing it with maven:

In my case, I’m currently using a timestamp to try to avoid caching. Feel free to replace with a version, etc.

This will update the template and build time.

  <properties>
    <timestamp>${maven.build.timestamp}</timestamp>
  </properties>


      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[App.js]]></token>
              <value><![CDATA[App.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>

Brian

From: lol lol <ma...@gmx.de>
Sent: Tuesday, January 12, 2021 1:47 AM
To: users@royale.apache.org
Subject: [EXTERNAL] CSS & JS file versioning

Hi All,

Is there any possibility defined that lets me define my own placeholders in the html-template?
For example im using an html template with the following line

    <link rel="stylesheet" type="text/css" href="${application}.css">

Is there anything helpful already existing in the compiler so I can add a version to my css like so:


href="${application}?v=12345678" />

Thank!

RE: [EXTERNAL] CSS & JS file versioning

Posted by Brian Raymes <br...@teotech.com>.
Can you describe your workflow with that setting? Chrome, for example, turns that off with every launch.

I miss the days when I could launch a browser with the cache disabled. I wish it were still possible.


From: Harbs <ha...@gmail.com>
Sent: Saturday, January 23, 2021 11:32 AM
To: users@royale.apache.org
Subject: Re: [EXTERNAL] CSS & JS file versioning

That’s not necessary. All browsers have a checkbox to disable cache while devtools are open.

HTH,
Harbs


On Jan 23, 2021, at 1:58 AM, Brian Raymes <br...@teotech.com>> wrote:

FYI, I have expanded upon this for my debug version as well:

This adds a timestamp to ever every js reference provided in the debug output to hopefully thwart the cache. I’ve been having to clear my cache a lot lately, and I’m hoping this removes the need.

      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[((goog\.addDependency)(.)*)(\.js)]]></token>
              <value><![CDATA[$1.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>



From: Carlos Rovira <ca...@apache.org>>
Sent: Thursday, January 14, 2021 1:27 AM
To: users@royale.apache.org<ma...@royale.apache.org>
Subject: Re: [EXTERNAL] CSS & JS file versioning

Thanks Brian,

very useful!

Not related, but as well useful, I use maven's build timestamp with defines to get it in AS3 in the following way:

https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169

Best,

Carlos

El mar, 12 ene 2021 a las 19:01, Brian Raymes (<br...@teotech.com>>) escribió:
As others have stated, there are other ways to do this. Here is how I’m doing it with maven:

In my case, I’m currently using a timestamp to try to avoid caching. Feel free to replace with a version, etc.

This will update the template and build time.

  <properties>
    <timestamp>${maven.build.timestamp}</timestamp>
  </properties>


      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[App.js]]></token>
              <value><![CDATA[App.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>

Brian

From: lol lol <ma...@gmx.de>>
Sent: Tuesday, January 12, 2021 1:47 AM
To: users@royale.apache.org<ma...@royale.apache.org>
Subject: [EXTERNAL] CSS & JS file versioning

Hi All,

Is there any possibility defined that lets me define my own placeholders in the html-template?
For example im using an html template with the following line

    <link rel="stylesheet" type="text/css" href="${application}.css">

Is there anything helpful already existing in the compiler so I can add a version to my css like so:


href="${application}?v=12345678" />

Thank!


--
Carlos Rovira
Apache Member & Apache Royale PMC
Apache Software Foundation
http://about.me/carlosrovira


Re: [EXTERNAL] CSS & JS file versioning

Posted by Harbs <ha...@gmail.com>.
That’s not necessary. All browsers have a checkbox to disable cache while devtools are open.

HTH,
Harbs

> On Jan 23, 2021, at 1:58 AM, Brian Raymes <br...@teotech.com> wrote:
> 
> FYI, I have expanded upon this for my debug version as well:
> 
> This adds a timestamp to ever every js reference provided in the debug output to hopefully thwart the cache. I’ve been having to clear my cache a lot lately, and I’m hoping this removes the need.
>  
>       <plugin>
>         <groupId>com.google.code.maven-replacer-plugin</groupId>
>         <artifactId>replacer</artifactId>
>         <version>1.5.3</version>
>         <executions>
>           <execution>
>             <phase>package</phase>
>             <goals>
>               <goal>replace</goal>
>             </goals>
>           </execution>
>         </executions>
>         <configuration>
>           <ignoreMissingFile>false</ignoreMissingFile>
>           <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
>           <replacements>
>             <replacement>
>               <token><![CDATA[((goog\.addDependency)(.)*)(\.js)]]></token>
>               <value><![CDATA[$1.js?v=${timestamp}]]></value>
>             </replacement>
>             <replacement>
>               <token><![CDATA[App.css]]></token>
>               <value><![CDATA[App.css?v=${timestamp}]]></value>
>             </replacement>
>           </replacements>
>         </configuration>
>       </plugin>
>  
>  
>  
> From: Carlos Rovira <ca...@apache.org> 
> Sent: Thursday, January 14, 2021 1:27 AM
> To: users@royale.apache.org
> Subject: Re: [EXTERNAL] CSS & JS file versioning
>  
> Thanks Brian,
>  
> very useful!
>  
> Not related, but as well useful, I use maven's build timestamp with defines to get it in AS3 in the following way:
>  
> https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169 <https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169>
>  
> Best,
>  
> Carlos
>  
> El mar, 12 ene 2021 a las 19:01, Brian Raymes (<brian.raymes@teotech.com <ma...@teotech.com>>) escribió:
> As others have stated, there are other ways to do this. Here is how I’m doing it with maven:
>  
> In my case, I’m currently using a timestamp to try to avoid caching. Feel free to replace with a version, etc.
>  
> This will update the template and build time.
>  
>   <properties>
>     <timestamp>${maven.build.timestamp}</timestamp>
>   </properties>
>  
>  
>       <plugin>
>         <groupId>com.google.code.maven-replacer-plugin</groupId>
>         <artifactId>replacer</artifactId>
>         <version>1.5.3</version>
>         <executions>
>           <execution>
>             <phase>package</phase>
>             <goals>
>               <goal>replace</goal>
>             </goals>
>           </execution>
>         </executions>
>         <configuration>
>           <ignoreMissingFile>false</ignoreMissingFile>
>           <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
>           <replacements>
>             <replacement>
>               <token><![CDATA[App.js]]></token>
>               <value><![CDATA[App.js?v=${timestamp}]]></value>
>             </replacement>
>             <replacement>
>               <token><![CDATA[App.css]]></token>
>               <value><![CDATA[App.css?v=${timestamp}]]></value>
>             </replacement>
>           </replacements>
>         </configuration>
>       </plugin>
>  
> Brian
>  
> From: lol lol <masscrit@gmx.de <ma...@gmx.de>> 
> Sent: Tuesday, January 12, 2021 1:47 AM
> To: users@royale.apache.org <ma...@royale.apache.org>
> Subject: [EXTERNAL] CSS & JS file versioning
>  
> Hi All,
>  
> Is there any possibility defined that lets me define my own placeholders in the html-template?
> For example im using an html template with the following line
>  
>     <link rel="stylesheet" type="text/css" href="${application}.css">
>  
> Is there anything helpful already existing in the compiler so I can add a version to my css like so:
>  
> href="${application}?v=12345678" />
>  
> Thank!
> 
>  
> -- 
> Carlos Rovira
> Apache Member & Apache Royale PMC
> Apache Software Foundation
> http://about.me/carlosrovira <http://about.me/carlosrovira>

RE: [EXTERNAL] CSS & JS file versioning

Posted by Brian Raymes <br...@teotech.com>.
FYI, I have expanded upon this for my debug version as well:

This adds a timestamp to ever every js reference provided in the debug output to hopefully thwart the cache. I’ve been having to clear my cache a lot lately, and I’m hoping this removes the need.

      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[((goog\.addDependency)(.)*)(\.js)]]></token>
              <value><![CDATA[$1.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>



From: Carlos Rovira <ca...@apache.org>
Sent: Thursday, January 14, 2021 1:27 AM
To: users@royale.apache.org
Subject: Re: [EXTERNAL] CSS & JS file versioning

Thanks Brian,

very useful!

Not related, but as well useful, I use maven's build timestamp with defines to get it in AS3 in the following way:

https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169

Best,

Carlos

El mar, 12 ene 2021 a las 19:01, Brian Raymes (<br...@teotech.com>>) escribió:
As others have stated, there are other ways to do this. Here is how I’m doing it with maven:

In my case, I’m currently using a timestamp to try to avoid caching. Feel free to replace with a version, etc.

This will update the template and build time.

  <properties>
    <timestamp>${maven.build.timestamp}</timestamp>
  </properties>


      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[App.js]]></token>
              <value><![CDATA[App.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>

Brian

From: lol lol <ma...@gmx.de>>
Sent: Tuesday, January 12, 2021 1:47 AM
To: users@royale.apache.org<ma...@royale.apache.org>
Subject: [EXTERNAL] CSS & JS file versioning

Hi All,

Is there any possibility defined that lets me define my own placeholders in the html-template?
For example im using an html template with the following line

    <link rel="stylesheet" type="text/css" href="${application}.css">

Is there anything helpful already existing in the compiler so I can add a version to my css like so:


href="${application}?v=12345678" />

Thank!


--
Carlos Rovira
Apache Member & Apache Royale PMC
Apache Software Foundation
http://about.me/carlosrovira


RE: [EXTERNAL] CSS & JS file versioning

Posted by Brian Raymes <br...@teotech.com>.
Oooh! I didn’t know we could do that. Very neat!

Thank you for sharing.

Brian

From: Carlos Rovira <ca...@apache.org>
Sent: Thursday, January 14, 2021 1:27 AM
To: users@royale.apache.org
Subject: Re: [EXTERNAL] CSS & JS file versioning

Thanks Brian,

very useful!

Not related, but as well useful, I use maven's build timestamp with defines to get it in AS3 in the following way:

https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169

Best,

Carlos

El mar, 12 ene 2021 a las 19:01, Brian Raymes (<br...@teotech.com>>) escribió:
As others have stated, there are other ways to do this. Here is how I’m doing it with maven:

In my case, I’m currently using a timestamp to try to avoid caching. Feel free to replace with a version, etc.

This will update the template and build time.

  <properties>
    <timestamp>${maven.build.timestamp}</timestamp>
  </properties>


      <plugin>
        <groupId>com.google.code.maven-replacer-plugin</groupId>
        <artifactId>replacer</artifactId>
        <version>1.5.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>replace</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <ignoreMissingFile>false</ignoreMissingFile>
          <file>${basedir}/target/javascript/bin/js-debug/index.html</file>
          <replacements>
            <replacement>
              <token><![CDATA[App.js]]></token>
              <value><![CDATA[App.js?v=${timestamp}]]></value>
            </replacement>
            <replacement>
              <token><![CDATA[App.css]]></token>
              <value><![CDATA[App.css?v=${timestamp}]]></value>
            </replacement>
          </replacements>
        </configuration>
      </plugin>

Brian

From: lol lol <ma...@gmx.de>>
Sent: Tuesday, January 12, 2021 1:47 AM
To: users@royale.apache.org<ma...@royale.apache.org>
Subject: [EXTERNAL] CSS & JS file versioning

Hi All,

Is there any possibility defined that lets me define my own placeholders in the html-template?
For example im using an html template with the following line

    <link rel="stylesheet" type="text/css" href="${application}.css">

Is there anything helpful already existing in the compiler so I can add a version to my css like so:


href="${application}?v=12345678" />

Thank!


--
Carlos Rovira
Apache Member & Apache Royale PMC
Apache Software Foundation
http://about.me/carlosrovira


Re: [EXTERNAL] CSS & JS file versioning

Posted by Carlos Rovira <ca...@apache.org>.
Thanks Brian,

very useful!

Not related, but as well useful, I use maven's build timestamp with defines
to get it in AS3 in the following way:

https://github.com/codeoscopic/avant2-website/blob/b97c62fb583e850e7190b28396e75adb3e7bf22a/avant2-products-companies/pom.xml#L169

Best,

Carlos

El mar, 12 ene 2021 a las 19:01, Brian Raymes (<br...@teotech.com>)
escribió:

> As others have stated, there are other ways to do this. Here is how I’m
> doing it with maven:
>
>
>
> In my case, I’m currently using a timestamp to try to avoid caching. Feel
> free to replace with a version, etc.
>
>
>
> This will update the template and build time.
>
>
>
>   <properties>
>
>     <timestamp>${maven.build.timestamp}</timestamp>
>
>   </properties>
>
>
>
>
>
>       <plugin>
>
>         <groupId>com.google.code.maven-replacer-plugin</groupId>
>
>         <artifactId>replacer</artifactId>
>
>         <version>1.5.3</version>
>
>         <executions>
>
>           <execution>
>
>             <phase>package</phase>
>
>             <goals>
>
>               <goal>replace</goal>
>
>             </goals>
>
>           </execution>
>
>         </executions>
>
>         <configuration>
>
>           <ignoreMissingFile>false</ignoreMissingFile>
>
>           <file>${basedir}/target/javascript/bin/js-debug/index.html</file
> >
>
>           <replacements>
>
>             <replacement>
>
>               <token><![CDATA[App.js]]></token>
>
>               <value><![CDATA[App.js?v=${timestamp}]]></value>
>
>             </replacement>
>
>             <replacement>
>
>               <token><![CDATA[App.css]]></token>
>
>               <value><![CDATA[App.css?v=${timestamp}]]></value>
>
>             </replacement>
>
>           </replacements>
>
>         </configuration>
>
>       </plugin>
>
>
>
> Brian
>
>
>
> *From:* lol lol <ma...@gmx.de>
> *Sent:* Tuesday, January 12, 2021 1:47 AM
> *To:* users@royale.apache.org
> *Subject:* [EXTERNAL] CSS & JS file versioning
>
>
>
> Hi All,
>
>
>
> Is there any possibility defined that lets me define my own placeholders
> in the html-template?
>
> For example im using an html template with the following line
>
>
>
>     <link rel="stylesheet" type="text/css" href="${application}.css">
>
>
>
> Is there anything helpful already existing in the compiler so I can add a
> version to my css like so:
>
>
>
> href="${application}?v=12345678" />
>
>
>
> Thank!
>


-- 
Carlos Rovira
Apache Member & Apache Royale PMC
*Apache Software Foundation*
http://about.me/carlosrovira