How do you specify a minimum required version with the Mozilla addon-sdk cfx tool? - firefox-addon-sdk

Building a traditional Firefox extension, you would set the minVersion field in the install.rdf. Since that is abstracted away by package.json and cfx, is there any way to set a minVersion?
Motivation:
Because of certain changes to behavior in the contextMenu API, my add-on only works as expected from a certain versions of the Addon-SDK and upwards. I'd like to enforce this constraint.

From the Add-on SDK docs
Changing minVersion and maxVersion Values

Related

TYPO3 – TypoScript auto-complete in backend

It's just a simple question but couldn't find any helpful solution or hints...I have the current TYPO3 version and watched some videos on YouTube about it and wondered why I have no autocomplete when writing some TypoScript.
I saw it in this video: https://www.youtube.com/watch?v=ZCSIK3lFfwM&list=PL1D69sw7eWECaiqIOLhcSnjgTTjLJdd4I&index=5 at 03:45
Is it possible to do it in the newest version or do I have to use an IDE?
First install the extension ts3editor.
Then you can "activate" auto complete just by pressing CTRL+SPACE. For example, write:
->config.
then press
->"CTRL+SPACE"
then the autocomplete advice/suggestion will pop-up.
I use version 9 and it works fine.
The TYPO3 core offers the extension "t3editor", which is based on CodeMirror and provides syntax highlighting and codecompletion.
I suspect it just isn't activated in your TYPO3 instance. You can check this in the Extension Manager in your TYPO3 backend.
1st edit: As the extension seems to be working in general – please try writing config. on a new line in your editor. The Top Level Objects (e.g. config) aren't auto-completed in the backend, but it should open a box with suggested configurations after you wrote the dot.
t3editor has some restrictions: Nesting isn't supported (see example below). I read it can have problems inside conditions, too.
// This is auto-completed:
config.no_cache = 1
// This isn't:
config {
no_cache = 1
}
In short: t3editor can only help you to a certain degree. It is considered best practice to save all TypoScript (and everything else related to templating) in files into a dedicated templating extension (or sitepackage) and use an IDE. There are TypoScript auto-complete plugins for several editors and IDEs, for example PhpStorm.
If you want more information about using sitepackages, see this video series on YouTube by the offical TYPO3 account, or take a look at my personal templating extension which I use for new websites.
2nd edit: After you wrote you're using the Sprint Release 9.1.0, I was able to test the behaviour in this version and can confirm that code completion won't work in it.
Actually, that seems to be the intended future behaviour of t3editor for the TYPO3 core team. They want to remove this extension in TYPO3 v10 altogether (it's planned to be available on GitHub then). The reason is that they don't recommend to use/save TypoScript directly in the database, but in a separate template extension (see explanation above).
Sources:
TYPO3 Bug tracker, issue #81885
Communication platform TYPO3 Slack, Channel #typo3-cms-coredev, Nov 19th, 2017
So again, I recommend to use an API instead.

Programmatically uninstall feature

I am looking for a way to uninstall a particular feature in my product. The feature that is installed now needs to be replaced by a feature with the same name, but different version and different plugins associated with it during update - older version of product is being updated with the new one.
Doing some research I saw org.eclipse.equinox.p2.operations.UninstallOperation that looks like something I can use. I also saw instructions.uninstall phase in p2.inf that looks relevant.
Which is the preferred/better way to do feature uninstall?
This is a common misconception: the p2.inf install/uninstall instructions do not change the installed units, but describe the low-level actions that should be performed during an installation/uninstallation of an installable unit.

TYPO3 upgrade 4.7.12 to 6.1.7 backend content view issue

I successfully upgraded TYPO3 version 4.7.12 to 6.1.7, and also followed all steps for upgrading.
http://wiki.typo3.org/Upgrade
All functionality works fine in both side frontend and backend.
But the backend content view looks ugly, see attachment image.
Templating method: TemplaVoila
Please help me where I missed something.
You should be aware, that TemplaVoila is not actively developed any more. It also is not 6.x compatible and will most likely not be fixed to become compatible.
From the looks of things I'd say either TemplaVoila or any other non compatible extension break your backend view. I'd suggest you disable all extensions that are not explicit 6.x compatible and try to enable your way back until you know which extension causes this, and TV is a good candidate for this.
As a possible replacement have a look at fluidcontent or write your own content elements via a simple extension.

Movable Type 4 vs 5

I have a Movable Type site running MT 4.38, and I was wondering whether I should upgrade to 5.
For a while, MT 4 and 5 seemed to have been developed concurrently, but now I only see activity in MT 5. Has MT 4 been abandoned?
The person using the site is change averse, so I only want to upgrade if it's absolutely necessary (i.e. security issues).
Thanks
Yes. Movable Type 4.38 has a patch for a security vulnerability which you should be sure to apply. But beyond that, you should absolutely upgrade to Movable Type 5.2.3.
The big reason is that Movable Type 4.38 will be end-of-lifed on December 31, 2013. This means that there will be no security updates for Movable Type 4.38 after that date.
Movable Type 5 has a number of great new features that are huge improvements over MT 4.38:
New and improved Rich Text Editor based on TinyMCE
Revision history on the most-used objects in the CMS
List-management framework enhances Movable Type's ability to manage large amounts of data inside the CMS
Sortable categories and folders
Template tags for things like mt:EntryPrimaryCategory
Enhanced multi-blog support
Huge support improvements for Webkit-based browsers (Safari and Google Chrome) as well as IE 8 and 9
Login failure detection, allowing either account or IP address lock out
With all due respect, no one should be running a version of Movable Type that is no longer supported with security patches. It's foolish to think that any one person can know all of the possible security issues in an older version of a Content Management System such as Movable Type.
Yes, MT4 is no longer developed. It still receive security patchs every few months, but there will not be a new version.
As for what you want to use, MT4 and MT5 have a different set of plugins. So if you want to upgrade, check that the plugins that you need support MT5 or have a MT5 replacement.
Upgrading would work without any problem if you are not using 3rd party plugins.
If you're using 3rd party plugins, you might encounter compatibility issues because the v5.x architecture is much different than 4.x.
Before considering to upgrade to v5.x you may like to check your 3rd party plugins and see if there is a version that works with v5.x.
Another thing to consider is to clone your installation and try to upgrade it on a different domain/folder or on a stage server where you could check that everything works before upgrading your live installation.
Alternatively you could order a professional movable type upgrade service from:
http://www.movabletypeupgrade.com/

Eclipse PDE - Plug-in, Feature, and Product Versioning

I am having much confusion over the process of upgrading version numbers in dependent plug-ins, features, and products in a fairly large eclipse workspace.
I have made API changes to java code residing in an existing plug-in and thus requires an increase of the Major part of the version identifier. This plug-in serves as a dependency to a given feature, where the feature is later included in a product. From the documentation at http://wiki.eclipse.org/Version_Numbering, I understand (for the most part) when the proper number should be increased on the containing plug-in itself.
However, how would this Major version number change on the plug-in affect dependent, "down-the-line" items (e.g., features, products)?
For example, assume we have the typical "Hello World" setup as follows:
Plug-in: com.example.helloworld, version 1.0.0
Feature: com.example.helloworld.feature, version 1.0.0
Product: com.example.helloworld.product, version 1.0.0
If I were to make an API change in the plug-in, this would require a version update to be that of 2.0.0. What would then be the version of the feature, 1.1.0? The same question can be applied for the product level as well (e.g., if the feature is 1.1.0 OR 2.0.0, what is the product version number)?
I'm sure this is quite the newbie question so I apologize for wasting anyone's time and effort. I have searched for this type of content but all I am finding is are examples showing how to develop a plug-in, feature, product, and update site for the first time. The only other content related to my search has been developing feature patches and have not touched on the versioning aspect as much as I would prefer. I am having difficulty coming into (for the first time) an Eclipse RCP / PDE environment and need to learn the proper way and / or best practices for making such versioning updates and how to best reflect this throughout other dependent projects in the workspace.
If you would like to apply the same versioning systems to feature and product, then you would set feature and product to 2.0.0 when one of the plugins go to 2.0.0. That would communicate to whoever is consuming your feature or product that there is a breaking API change inside it somewhere.
On the other hand, there is no requirement to apply the same versioning convention. You can version your bundles following that convention to properly communicate your API changes and then turn around and use more marketing-sensible versions for product/feature. Keep in mind that user will see product/feature version more than they will individual bundle version.
I've seen it done both ways effectively. There isn't really a right or wrong way on this.