Yii upgrade management - yii

I'm currently designing a system to allow for upgrades of my modules across all my Yii-powered websites. Does Yii have any sort of api that would allow me to find out the version number of the latest stable release of Yii? I've searched the Yii site and can't find anything, and wondered if anyone else had managed to find a way of doing this.

Ok, I sorted this. I used git to get the list of tags from the github repo for Yii, then filtered it for release candidates.
$tags = shell_exec('git ls-remote --tags https://github.com/yiisoft/yii.git | egrep -i -v RC\|{}');
$tagsArray = preg_split("#\s?[a-zA-Z0-9]{0,40}[\s](refs\/tags\/)#", $tags);
usort($tagsArray, 'version_compare');
$count = count($tagsArray);
var_dump($tagsArray[$count-1]);
It's dirty, but it did the job!

Related

Tests with #javascript not working in Sylius (plugin)

I have been facing this issue for more than a day now, and I can't seem to figure it out.
I have configured my plugin using docker and I am running behat with headless chrome, getting this:
docker-compose exec -e APP_ENV=test sylius_plugin bash -c "vendor/bin/behat features/user/managing_vendors/deleting_multiple_vendors.feature"
#managing_vendors
Feature: Deleting multiple vendors
In order to get rid of deprecated vendors in an efficient way
As an Administrator
I want to be able to delete multiple vendor accounts at once
Background:
Given I am logged in as an administrator
And there is a vendor "ted" whose email is "ted#example.com"
And there is also a vendor "john" whose email is "john#example.com"
#ui #javascript
Scenario: Deleting multiple vendors at once
Given I browse vendors
Expected to be on "http://0.0.0.0:80/admin/vendor-users/" but found "http://0.0.0.0/admin/login" instead (FriendsOfBehat\PageObjectExtension\Page\UnexpectedPageException)
This feature is based on deleting_multiple_administrators.feature that is provided in the sylius package.
I found this other issue (https://github.com/Sylius/PluginSkeleton/issues/138) and tried to apply those solutions but none worked.
Could you enlighten me on this?
Happy to provide additional info.
Thanks
I have found the problem. There was a conflict between the environments (and therefore databases) dev and test.
The solution was to separate the environments in two docker containers and run them in an isolated manner.

How to update Odoo to major version

I have an Odoo instance (13) installed from GitHub reps and want to update to version 14.
I followed the steps here 1:
Enter the odoo base code in /opt/odoo/odoo
git fetch
git rebase --autostash
Then i updated the modules starting the service with the options "-u all -d mydatabase"
su odoo -c "/opt/odoo/venv/bin/python3 /opt/odoo/odoo/odoo-bin -c /etc/odoo-file.conf -u all -d mydatabase"
After a while, when the process finished the Odoo version is still 13.
There's no customizations in code and database, and there's no true records there.
I would like to know if there's a step i missed or the correct way to update Odoo.
Thanks
First git branch to see what is actually checked out.
If you are using self hosted community edition of Odoo then you have to do manual data migration before the upgrade.
Backup everything and start with test environment. It will go wrong.
You have to know what data is in your database. And what changes are made to the Odoo.
there are tools and tips but not yet for ver 14
https://github.com/OCA/OpenUpgrade

can't fetch the go language repository on Debian

I follow the installation guide at http://golang.org/doc/install.html,
at first everything goes well, but problem comes at the "fetch the repository" step,
the guide says "$ hg clone -u release https://go.googlecode.com/hg/ go"
I follow the command but system always say that's wrong
so I read the help and modified it into
"$ hg clone -U release ..repo url... go"
(I don't see a lowercase u option but there's a U instead which means noupdate)
but still goes wrong
so I modified it again
"$ hg clone -U r60 ..repo url... go"
(I think release actually means go release number?)
ok, now that works finally
but, when it's over
cd to the go directory,hey,why all the files are hidden?!
and different with the url directory, for ex there's no such a src directory
so what am I doing wrong, and sorry for my english is not good
thank you for your help
for as a new user I can't attach a image and can't have more than two links in one post, see the picture link below at the reply to Evan Shaw
and in the guide page they say that I need to install python-setuptools python-dev and build-essential, because in ubuntu/debian users' distribution's package repository, the will "most likely be old and broken", what that mean? Am I suppose to install the tool manually(but not a easy_install)?
for a new user I can't answer myself,I think jnml points out the best matched answer
I thought this question is answerd,
the problem is that repository in Ubuntu/Debian for is tool old,
if you just easy_install (apt-get install )
you got version 1.0.1 , that's not match for the command gave on the go installation guide,
so a simple way to work it out is(thanks jnml for pointing this out):
hg clone
cd go
hg update release
that's done.
but I still wonder how can I get the latest version of be installed on my Debian,but that's another question,
Thanks a lot to all of you who reply to me, thank you for your help!
hg -u (lower case) is definitely correct, check your version of mercurial.
$ hg help clone
...
options:
-U --noupdate the clone will include an empty working copy (only a repository)
-u --updaterev REV revision, tag or branch to check out
...
$

Creating a new Trac project via trac-admin initenv

I'm somewhat new to Trac.
I'm running trac version 0.11.7 on an ubuntu system.
I'm trying to create another project via the following command:
"trac-admin /var/lib/trac/shipping_tracker initenv".
After answering the various questions, the program fails and returns an error
( see: http://pastebin.com/yijzpB3i ) "Table 'system' already exists"
Does this mean that every-time I need to create a new project, I'll have to go into
the mysql database and create a new database, like trac1, trac2, etc??
I did notice this particular ticket ( http://trac.edgewall.org/ticket/5138 ) where
someone states you have to create a new database for each project. Is this correct??
Thank you.
--Mike
Every Trac environment, being a completely self-contained space, uses a separate database. So yes, you need to create a new database for each environment (although it might be a bad idea to name them trac1, trac2 etc.).
If you want to create new environments often, what you really need is probably multi-project support, which allows you to have different projects within one environment. However, it is still not done as of Trac 0.13, and is planned for 0.14.
You might also want to read about various ideas on having multiple projects with Trac. One of them deals with making Trac store multiple environments in a single database, though it might be outdated and probably breaks automatic updates.
I am using Trac 1.0, running as a stand-alone server, and in order to run multiple projects on one trac installation you still need to set up new environment using
trac-admin /path/to/trac/yournewpoject initenv
... then create .htpasswd file in the /path/to/trac/yournewpoject dir, add users using
htpasswd /path/to/trac/yournewpoject/.htpasswd newuser
(or copy an existing .htpasswd file there) ... and then restart trac with similar to the followin command:
python /path/to/tracd --user=yourlinuxuser --group=yourlinuxgroup -d \
-b hostname -p 8000 \
--basic-auth=oldproject,/path/to/trac/oldproject/.htpasswd,realmname \
--basic-auth=yournewpoject,/path/to/trac/yournewpoject/.htpasswd,realmname \
/path/to/trac/oldproject \
/path/to/trac/yournewpoject
This is valid in case you are using the same type of basic authentication as I do.

Unable to create a new fossil repo, fossil beginner

I figured I would check out fossil for some small apps I have to complete. I am not new to DVCS as I have used CVS, subversion, mercurial, and git. After installing on my Mac (10.7), using homebrew, I am left with the following when attempting to run:
-> % fossil new ../FOSSIL/project.fossil
fossil: SQLITE_CONSTRAINT: abort at 20 in [INSERT INTO user(login,pw,cap,info) VALUES('developer','','dei','Dev');]: column login is not unique
fossil: column login is not unique
INSERT INTO user(login,pw,cap,info) VALUES('anonymous',hex(randomblob(8)),'hmncz','Anon');INSERT INTO user(login,pw,cap,info) VALUES('nobody','','gjor','Nobody');INSERT INTO user(login,pw,cap,info) VALUES('developer','','dei','Dev');INSERT INTO user(login,pw,cap,info) VALUES('reader','','kptw','Reader');
If you have recently updated your fossil executable, you might need to run "fossil all rebuild" to bring the repository schemas up to date.
I have attempted to run fossil init ../FOSSIL/project.fossil as well as fossil clone http://www.fossil-scm.org/ myclone.fossil which yields the same results as seen above.
I then tried fossil user list as it looks like fossil is having issues with logins and users, however fossil expects a repo argument. Searching for the default configuration (something like ~/.gitconfig with git) yielded no results.
I have also tried rm -rf ~/.fossil and re-running the above commands as well as using brew install sqlite to get the updated version (3.7.7 as of this writing), but neither seem to help.
What do I need to do in order to get fossil functioning properly?
Silly question... is your own username on the system "developer"? Since that would clash with the name of one of the auto-created users.
Try doing "fossil init -A admin (filename)" to use a different name ("admin" in my example) for the repository owner and see if it works.