I'm pulling latest Codeigniter from
https://github.com/EllisLab/CodeIgniter
However, when I check this user-guide page
https://github.com/EllisLab/CodeIgniter/tree/develop/user_guide_src
It is not something that I can view. It should have been HTML. It needs to be compiled I think.
I don't want to use
http://codeigniter.com/user_guide/
this guide because it is not as updated as this one.
There have been a lot of enhancements after 2.1.0 stable released.
How to compile this?
Actually it is written on the Codeigniter page. But I have never forked CI. How can I do it?
So where's the HTML?
Obviously, the HTML documentation is what we care most about, as it is
the primary documentation that our users encounter. Since revisions to
the built files are not of value, they are not under source control.
This also allows you to regenerate as necessary if you want to
"preview" your work. Generating the HTML is very simple. From the root
directory of your user guide repo fork issue the command you used at
the end of the installation instructions:
make html You will see it do a whiz-bang compilation, at which point
the fully rendered user guide and images will be in build/html/. After
the HTML has been built, each successive build will only rebuild files
that have changed, saving considerable time. If for any reason you
want to "reset" your build files, simply delete the build folder's
contents and rebuild.
I found how I can do it. However, my host "Hostgator" doesn't not allow me to install sphinx. I think it will be better to ask an Unix user to compile it for me .
read the documentation...
https://github.com/EllisLab/CodeIgniter/blob/develop/user_guide_src/README.rst
download the guide to your local machine and compile it yourself.
Related
Looking at https://docs.geoserver.org/ it seems odd that under the older versions the links stop at v2.13.2. Did the community stop publishing the interactive HTML document at some point such that we now have to find a way to the page where it has to be downloaded?
We are actually going to stop providing anything other than main, stable and maintenance due to lack of resources to keep documents online: the company that provided the old doc server is no more, the project has no budget, so we'll move the docs to GitHub pages, which has a space limitation allowing only 3 versions of the doc to be published.
However, each release comes with a zip file with documentation. Go to the http://geoserver.org/download/, move to the archived tab, pick the one you want, e.g., http://geoserver.org/release/2.12.4/, follow the "user guide HTML", save and unpack the zip. You now have the docs you need.
It looks like something changed in the release process some time ago (2.13.x was quite a while ago). To be honest I didn't know we had ever provided hosted copies of any version of the manual except for Development, Stable and Maintenance. In principal you should never need a manual that is older than Maintenance as that means you are running an unsupported version.
If you desperately need a specific version (to complete a collection maybe) then you can find a zipped copy of the HTML manual under the Archived tab of the Download page.
I'll probably raise a ticket about that documentation page as it has broken links too, so expect all the old links to go soon.
Static Files in Odoo
I'm new to Odoo, and am working through developing a custom theme for a client. I've worked through the theme tutorial despite the many errors and omissions that exist in that documentation (going to make a pull request to update that after I'm done). My latest struggle is dealing with static files in Odoo, specifically images in the theme.
The Setup
Running Odoo 13.0.20200323 on Ubuntu 18.04 in VirtualBox managed by Vagrant and provisioned with Ansible
The Problem
Changes to image files in the static folder are not reflected on the website. This includes updating the theme in the website theme settings (the update function seems to update everything else). I've changed image names, image content, moved them into other folder, and have not been able to figure out how to have any changes updated on the website. I've restarted the server, doesn't change anything. Updated the theme as stated above, doesn't work. The only way I've been able to have any changes reflected on the front end is to completely destroy and rebuild the server.
Questions
What am I missing? Is there a function I'm not running to trigger Odoo to update what it serves from the static folder?
How does Odoo work with static files in general? On the fly updates to files in the static folder don't seem to have any changes on the front end. Are the files in the static folder copied somewhere else on install, and then served from that other location?
Understanding
I understand that having images and other files change in a folder called static, doesn't make much sense functionally, and that's not my intention for this. Since I'm in development I need to make changes to files, like SCSS, JS, and images, and have those updates reflected on the front end without having to destroy and rebuild the server every time. To be clear, changes to SCSS and JS files that I've registered in .xml files and bundled with various Odoo bundles update just fine when I make changes to them and then update the theme on the backend in the theme management view.
My desire is to understand how Odoo handles the files in the static folder in general, how to update those files properly, and how to manage them while developing and for release.
Answers
I've figured out an answer to the first part of the question as to what I'm doing wrong. It seems like a browser caching issue. When performing a hard reload, empty cache and hard reload, or visiting the site in an incognito window changes are reflected to imagery.
As far as I can tell Odoo is just serving files from the static folder directly. Please correct me if this is not the case.
Follow-up
Does anyone have a good solution for working with changes like this and dealing with browser caching issues?
Answer: I've set up a a couple gulp tasks that use gulp-rev (will replace with gulp-rev-all soon) rev-del and rev-rewrite to handle cache busting through appending hashes to the file names.
I'm going to try setting up Browser-sync in proxy mode to see how that deals with changes to files on reload. I'll report what I find!
Update: Browser-sync has worked well so far as expected. But was kind of useless until I figured out how to work out a fix for the problem below
Does anyone know of how to automate Odoo rebuilding SCSS, JS etc. bundles? So that on file change the theme can be updated and the results seen without having to manually update the theme on the backend to see the results?
Answer: The main task was figuring out how to get live HTML/XML updates working. Which meant building Odoo from the source, and not making any updates or changes to the theme on the backend or frontend from within the Odoo interface. Passing the option --dev xml to Odoo when starting it with odoo-bin allows for the XML code to be evaluated directly, and makes live updates possible. But this extremely helpful (almost necessary) functionality is broken when you make any updates to the them from within Odoo. I'll report on any work arounds to this, but for now as long as I don't touch the theme from within Odoo (update the theme or make edits to it with their editor) then it works great. Also I had to bypass bundling my CSS and JS with their bundler initially to get those updates working live, but may be able to go back and rebundle them now that the code is being evaluated directly.
⭐️Boilerplate and Tutorial Series ⭐️
I'm going to get my whole process for theme building dialed in and then I'll be sharing the boilerplate and build tools on GitHub and also writing and filming a tutorial series on it. Since the built in documentation on that front is straight up error filled, omits critical information and also
I had to copy relevant files from an existing joomla application to a fresh joomla installation. After doing that, some plugins and modules that were working properly on the old installation aren't on the new installation. e.g
I have {chronoforms}Contact_Us{/chronoforms} that is meant to display a contact form, instead if justs echos {chronoforms}Contact_Us{/chronoforms}.
I also have {module _Story_Player} that is meant to display a allvideoshare video but instead just echos {module _Story_Player}
When i access the backend to view these plugins, i get a 500 - An error has occurred with xml missing note, eg, for chronoforms, i get The file chronoforms.xml could not be found although I have all the necessary files copied to the right location.
I have looked through jooomla forums and other resource sites but havent found any pointers so far.
The simplest thing to do would be to re-install the software, as it appears you've missed the relevant configuration files for those plugins (you've probably also missed other files media, language etc).
Chronoforms on JED.
All Video Share on JED
Most good extensions have no problem being installed over an existing or partial installation so you shouldn't encounter any problems.
As #Riccardo Zom, mentions re-installing will also make sure the extensions are properly registered with Joomla! for menus, ACL e.t.c.
What about "Extension Manager" > "Discover" - isn't that supposed to be used in such cases?
I develop a Joomla component. At the moment whenever I release a new version I ask the user to download a zip file and to manually upload the changed files via FTP. While this is ok for small releases, when a lot of files have been modified it is a slow, painful and error prone process. As alarming as it may be, many users installed Joomla via Fantastico one-click install and are not familiar with or comfortable using FTP.
I have recently added support for Joomla 1.6 which seems to provide a nice update facility for automated updates. Unfortunately the documentation seems to be lacking, e.g. what is the tags element, can the download type not be "full" and if so what would that look like?
Can any one explain the update process better or provide any good examples?
Joomla 1.5 is going to be around for a long time, is there a similar update process for 1.5?
For Joomla 1.5 at least, there is no need to use FTP for updating. In your XML manifest you can set the component to update. Rather than download, upzip, and FTP up, all your users would need to do is download the entire package, then install via the Joomla admin.
I am not sure about 1.6, your best bet would be to take apart a 1.6 component. It is my understanding that it is a rather simple process.
Can I create a symlink to the local extension from aonther project folder? I have a common local-server and i need to implement same extension on all local project-installations. I tried to put the symlink, but some times i do not get expected output. I get it only after clearing the cache of that perticular project.
Your scenario is a common one I guess. But as Omar said, linking to the same code base of the extension through several typo3 instances is not a good practice.
But we have the same structure as yours, we realize this through SVN. All of our projects got a SVN repository and common extensions have their own repository. Through svn:externals the extensions are linked into the concrete project. This has the advantage that you can change the extension in the concrete project and after committing all other projects (that do have to update from svn though) contribute from it. I Think this would fit your needs, too.
If I understand your question correctly you have several Typo3 sites on the same server and want to share an extension between them using a symlink. I don't think that is a very great idea because many extensions use tables and every site normally has it's own database so you would have to do a lot of tinkering to get that to work.
Instead you could make all the modifications to the extension files in the typo3conf/ext/extension_name folder and then export the extension to a t3x file (Ext Manager in the Backend). This t3x file can be installed as a extension (Import extension) on all your other sites.
If you extension does not use a database and you are planning to make frequent changes then I guess you should be able to make that work (the symlink). Otherwise I recommend you use the first approach I described.
I have not tried this, but you should be able to install extensions globally in Typo3. What this means is that the given extension is placed inside '(typo3_src/)typo3/ext/' instead of 'typo3conf/ext/', presuming both sites use the same Typo3 Core/Source (and thus typo3_src is a symlink to the location of the core).
You can enable installing global extensions via the Install Tool. Once inside the tool, click on 'All Configuration', then search for allowGlobalInstall. Or put the following line into your localconf.php:
$TYPO3_CONF_VARS['EXT']['allowGlobalInstall'] = '1';
At last, but not least, you need to make sure the 'typo3/ext/' directory is writeable.
Hope this will be to some help. If you have any further questions, let me know :)
As Björn mentioned, I'd sugegst to install them globally. Mind you, updating the source will require to move the extensions accordingly..
As for "expected output": be aware that the code in these folders is cached in various ways (mainly page content and config settings), and hence not always run. This is the reason a change done from "outside" the current installation is likely not to propagate to your output without clearing these caches (as you have observed).
When you actually install an extension via the extension manager, the cache should (if correctly configured) be cleared (interested parties may search for clearCacheOnLoad in class.em_index.php to reveal a clear_cacheCmd('all')). There is a small checkbox, which is normally checked, during the installation process to accomplish this.
Omar's first approach is therefore, as I see it, the more easy way to get "expected output" and less jumbling around with global extensions.