Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I did an package manager update-package command to update our project to the latest binaries. I almost published it because it passed all the tests until luckily I had found a problem that needed some more debugging.
My mouth fell open when I suddenly saw this exception message:
The free-quota limit on '6000 Redis requests per hour' has been reached. Please see https://servicestack.net to upgrade to a commercial license.
What if I published this site? Practices like these are simply revolting! There is no console warning or whatsoever about not having any license. It's like having an 'open source' trojan horse spread out into your projects.
Are there any good alternatives to servicestack?
EDIT:
Reading all the comments I guess my first reaction was a bit strong. Nuget updated from v3 to v4 automatically and although I didn't notice any breaking changes, reading the release notes would have been the right thing to do instead of bashing an otherwise good product. That being said, I think people will burn their hands on this exception, since 6000 requests would be enough to come through the tests and publishing this is disastrous.
We are migrating to Booksleeve, which was developed by the people who have built StackOverflow itself. So far we had very good experiences.
The money is not the issue (the cost of migration is higher than paying for the license), we're doing it because we just don't want to enter a business relationship with company with sketchy practices like this.
(And no, we didn't accept any license or anything, all we did was a git pull from GitHub.)
I am going with
StackExchange.Redis which was based upon the Booksleve
by Stack Exchange folks for very high performance needs. Seems good enough and with an active community.
Their license is MIT which basically means you just need to include their copyright & license into your product. (Fair enough)
ServiceStack, including packages such as ServiceStack.Redis, are becoming commercially supported products in version 4. You probably have been using version 3.x of the ServiceStack packages, and NuGet decided to update you to 4.x.
There are limits for free usage of the v4 libraries. See this announcement for more info. Version 3.x of all ServiceStack products remain open-source; there is a new GitHub project with information about v3 support.
For now, I would suggest undoing the package update and setting the max version to 3.x in your NuGet package config file, so that your NuGet packages remain at version 3.x for production code in the short term:
<package id="ServiceStack.Xyz" version="3.x.x" allowedVersions="[3,4)" />
Then it should be safe to use NuGet to update your packages.
Meanwhile, you can visit https://servicestack.net to evaluate your options for upgrading to version 4, licensing choices, or whether to stick with v3.
I was really sad to hear that SS would be commercial from V4, it made me a little bit angry but...anyway they need to keep their life I think.
So I moved to "https://code.google.com/p/booksleeve/" totally without complain.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
How can I convince my corp employer, than jars from the Maven repositories are safe for use? I've conducted a count of jars on my local repo and it came back as 552. My goal is to setup a corporate repository with approved jars, but I'd like to not have to submit hundreds and eventually thousands of software requests. any suggestions (other than find new emp)?
How can I convince my corp employer, than jars from the Maven repositories are safe for use?
Downloading a jar from a Maven repository is not less safe than downloading a jar from another location. In other words, Maven repositories don't really introduce a problem, the problem is your dependency on an external library.
Now, if your boss is really paranoid, he can always ask you to grab the sources of your 552 jars, audit them line by line, build them and install them in a repository of approved jars. That will "just" cost him a few dollars :)
But since most projects are open source, since they are transparent, since many eyes can inspect them, I personally believe that any malicious attacks would be detected pretty fast and that the cost isn't worth the risk (which is pretty low). Maybe I trust the community too much but, so far, it works.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
A co-worker has been going on about how cool Mylyn is for Eclipse. I want to give a task management tool a try but I use Netbeans. Is there a Mylyn like plugin for Netbeans? Preferable with integration to Redmine or Trac?
I switched over from Eclipse to Netbeans a year ago and during that time I have not found a good alternative to Mylyn. Even the latest dev builds of Cubeon do not come close. Despite Netbeans being a very good IDE, having Mylyn context management is essential to me. I have just posted a topic on the Netbeans forum discussing this issue and attempting to illustrate the importance of a Mylyn alternative. If this is important to anybody reading this then I suggest you leave a post in this thread:
http://forums.netbeans.org/viewtopic.php?t=27871
I think discussing this in the Forum is the best option at this time. Until the Netbeans community is convinced of the importance of Mylyn, any official feature request is doomed to fail.
Edit: There is now a feature request for this. If you would like to see this implemented then please vote here: http://code.google.com/p/cubeon/issues/detail?id=135
Have a look at Cube'n, which is a Trac plugin for Netbeans. I haven't used it (yet), but it has offline support, and some drag/drop integration with the task view, and support for custom trac workflows.
(Disclosure: I am the creator of NBTaskFocus)
Now there is a plugin for Task-focused development (like Mylyn in Eclipse) in NetBeans IDE. Visit the NBTaskFocus project at NBTaskFocus project page on Java.net
This project currently provides local task repository only, but with automatic task context maintenance using the open editor windows and also a Project Context panel to see the files in focused context.
I've used cubeon for couple of hours. The current latest version 1.2.01. is works fine on Netbeans 7.2. It can connect Trac servcer without any obstacle.
The UI of cubeon is little bit difficult to use. Main reason is that you should link a query to a folder with Synchronize Function to categories tasks. Also the filtering options hide under a drop down menu. It needs more mouse click than MyLyn in Eclipse. Any you can manage issues on Trac with this tool.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
After, reading and understanding Dan Benjamin's post about installing Ruby, Rails, etc. on OSX (Leopard), I really jumped at using usr/local, maybe at my peril and without understanding it fully. I've had no problem running Rails on my local machine, but I still feel like I don't quite wrap my head around these basic sysadmin practices.
As an example, when I run which git the path my git installation is running from is /usr/local/git/bin/git -- does that seem right?
I've learned the bulk of my programming thanks to JavaScript, and I haven't really had to go deeply under the hood of the Mac, but I'm very anxious to use these command line tools and scripts.
Can you recommend a good resource for documentation on basic Unix system administration for beginners (preferably for the Mac-set)?
I realize this might not be totally programming related, but I believe basic shell and command-line scripting knowledge is pretty crucial and I'd like to feel confident moving forward.
For improving your basic shell and command-line scripting knowledge, you don't need to get into sysadmin tasks. The nearest source of information (though not the most friendly at first) is the man command. Try man bash or man intro. Start by writing small shell script utilities.
About your question on git installation, you can install anything anywhere. But recommended directories are /usr/local/bin and /opt/bin for system-wide tools and ~/bin for your private tools. Usually tools create their own subdirectory in recommended directories where they put doc and resources, such as your /usr/local/git.
For online resources, I assume that you already know how to find the Apple web site and how to use Google.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
We are using Maven for a large build process (> 100 modules). We have been storing our external dependencies in source control, and using that to update a local repo.
However, we are ready to graduate to a local repo that can cache central so that we don't have to proactively download all 3rd parties (but we can still have a local repo to pull from). In addition we want to publish our internal build artifacts from a nightly build so that developers don't have to build the world.
We are considering Nexus and Artifactory. What are the reasons for preferring one over the other? Are there others we should be considering?
I'm sure that if you only talk about storing binaries from "mvn deploy" both will do fine.
We use Artifactory very extensively with all upgrades along the way. Lots of projects, numerous snapshots deployed and external repos proxied. Not a single problem. I find it hard to explain how other people experience issues with its DB, indexing or anything else. Nothing like that ever happened to us. Also, Artifactory allows to store data on a disk and only use a DB for storing metadata, it is quite flexible (see more here).
What makes those applications very different is their approach towards integration with other build tools and technologies. Nexus and Sonatype are pretty much locked on Maven and m2eclipse. They ignore anything else and only recently started to work on their own proprietary Hudson integration (see their Maven 3 webinar).
EDIT: This is not true anymore as of 2017 Nexus gives a much larger support for other build tools End of Edit
Artifactory provides an awesome Hudson, TeamCity and Bamboo integration, and Gradle / Ivy support. So while Nexus gives you nothing once you step out of Sonatype "comfort zone" (Maven, m2eclipse), Artifactory embraces and collaborates with all major build tools.
In fact, being able to deploy build artifacts from Hudson, when job has finished, and not by "mvn deploy" is a huge difference: Artifactory Hudson plugin makes an atomic-like deploy of all artifacts at once, only when a build job finished successfully. "mvn deploy" runs after each module and can deploy a partial set of artifacts if a build job fails in the middle. Deploying from Maven on module completion and not from a build server on job completion is really a bad thing to do.
As you see, Artifactory thinks "outside the box" while Nexus thinks "inside the box" and only cares about Maven and Maven artifacts.
Something else that makes Artifactory more accessible is their cloud-based Artifactory Online solution. For about $80 a month you have your own Artifactory instance, no need to dedicate any server for it.
Artifactory has a simple and straightforward REST API, don't know how it works for Nexus.
Edit Nexus has also a REST API that you can use easily as well.
To summarize, for basic storage of Maven artifacts I think both are fine. But while Nexus stops there being strictly a "Maven repository manager", Artifactory goes on and on, being a general "Binaries storage" for binaries of any kind, from any build tool and CI server.
I don't know about Artifactory but here are my reasons for using Nexus:
Dead simple install (and since 1.2, dead simple upgrade, too)
Very good web UI
Easy to maintain, almost no administrative overhead
Provides you with RSS feeds of recently installed, broken artifacts and errors
It can group several repositories so you can mirror several sources but need only one or two entries in your settings.xml
Deploying from Maven works out of the box (no need for WebDAV hacks, etc).
it's free
You can redirect access paths (i.e. some broken pom.xml requires "a.b.c" from "xxx"). Instead of patching the POM, you can fix the bug in Nexus and redirect the request to the place where the artifact really is.
Artifactory supports both file-system and database storage backends. Storage is checksum based and identical binaries are stored only once, no matter how many times they appear in the repo, which makes Artifactory more efficient storage-wise. Move and copy are also very cheap because of this architecture (in Nexus there's no REST for move/copy - you have to move stuff on the file system, then run corrective actions on the repo to let it know content has changed).
Another important differentiator is Artifactory has unique integration with Hudson and TeamCity for capturing information about deployed artifacts, resolved dependencies and environment data associated with build runs, which provides full build traceability.
Artifactory stores the artifacts in a database, which means that if something goes wrong, all your artifacts are gone. Nexus uses a flat file for your precious artifacts so you don't have to worry about them all getting lost.
If you need the "Pro" features of either (e.g. Staging repos, artifact promotion, NuGet), , then you need to consider the different pricing models, which are displayed on their websites.
http://www.jfrog.com/home/v_pricing
http://www.sonatype.com/nexus/purchase
In summary:
Artifactory Pro
you pay per server
you can pay more for increased service hours
Nexus Pro
you pay per seat, i.e. how many developers downloading artifacts
support service is Mon-Fri 0800-2000 ET only, no matter what you pay
No matter how many users you have, Nexus Pro offers a support service that's broadly equivalent to Artifactory's $7,450/year "Silver Value Pack".
$7,450/year will buy you approximately 67 Nexus Pro seats (1-50 # $108, the rest # $120).
On price and support alone then, Nexus Pro makes sense until you get to 67 users, at which point Artifactory becomes the cheaper option.
If you're doing all the support in-house; however, that magic point is about 23 users (Artifactory's most basic support offering is $2,750/year).
I made some research recenly about Artifactory 2 and Nexus 1.3. I'll list here the main differences I found:
Artifactory stores metadata and optionally files in DB, Nexus writes directly to file system. There are pros. and cons. for each approach. DB supports transactions, while in FS stored files can be accessed directly.
Artifactory has higher system requirements especially for disk space.
The most complete comparison: http://binary-repositories-comparison.github.io/
You should use Artifactory
Its latest version was a real jump
You can backup incrementally your repositories , which means you can have all your artifacts saved and maintain
Its has a easy to use web ui
and is really easy to set up
i enjoyed it a lot
check out its new version 2.0
From a learners point of view I note some specific differences between the two.
Sonatype .war deployment is not supported on Jboss application server at the time, although it does run under Tomcat.
Sonatype does not offer me an Amazon Machine Image (AMI), at present, that I could quickly stand up and test.
An Artifactory AMI is provided by Bitnami and takes a only a few minutes to stand up and a few more minutes to configure, maybe several tens of minutes dependant upon what you're trying to achieve.
Artifactory offer a SaaS version of Artifactory in the cloud so you can focus on getting things done rather than infrastructure.
I've no experience with Nexus but I've found Artifactory very intuitive and easy to configure, at least initially.
Added - I do note that the Artifactory User Guide, which may be OK for a seasoned pro, is a bit light on for some in depth explanations. For instance, starting out, one unzips and then addes a Repository, say RedHat's Jboss EAP Enterprise Repo. All goes fine but then when I tried to view the artifacts that were imported Artifactory reports zero artifacts? No errors or warnings so I'm now looking for an explanation. Is this normal or not normal? A simple explanation in the doco can quickly point one in the right direction. Being a good contributor I'm adding these comments to the project for the benefit of other starters.
All politics/religion aside, licensing makes a difference for some organizations.
Nexus is GPL now AGPLv3 and now Eclipse Public License (EPL).
Artifactory is Apache licensed LGPLv3 licensed as of version 2.1 of the product.
You may also want to consider Archiva, just for comparison's sake. It's Apache 2.0 licensed.
I see that Nexus usage is growing, while Artifcatory usage is generaly staying flat.
Picture is taken from here http://blog.sonatype.com/2014/11/42000-nexus-repository-managers-and-growing/
There is also matrix-comparison http://docs.codehaus.org/display/MAVENUSER/Maven+Repository+Manager+Feature+Matrix
Both Artifactory and Nexus have more or less similar feature set but Artifactory's LDAP support makes it more attractive over Nexus. Though Nexus also have LDAP support but in paid version :-(
Hmmm...my experience with artifactory is awful...but I'm a relative newbie so take it with a grain of salt. My overall complaint is that jar files recently uploaded to Artifactory do not seem to get indexed right away - as in for hours - and there does not seem to be a good way to force it. I've tried various things that appeared as if they should have worked, but didn't. I have been working with m2eclipse, adding dependencies to a project that i'm converting from ant. When I try to add a jar that I have just added to artifactory, I expect it to show up as a choice in the selector but it does not.
a coworker told me that they had installed nexus and so far they like it...but I can't vouch for it yet. I'm about to install that on a Linux box as soon as IT can find me one.