Giter VIP home page Giter VIP logo

jira-rest-class's Introduction

jira-rest-class's People

Contributors

chorny avatar mannih avatar melezhik avatar mjgardner avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jira-rest-class's Issues

Some possible performance improvements

Hi Packy!

It's me again. I've spend some time profiling a little CLI app I made to interact with our JIRA instance at work, trying to make it faster. If you're interested, here is what I found so far:

  1. This is a big one. Whenever an instance of JIRA::REST::Class::Issue is created, init() will create a method per issue type like is_bug() or is_story(). But to be able to do this, it needs to query JIRA for a list of all issue types (i.e. it will call $jira->issue_types). Although this is done only once, this call will cost some 500 ms which gives me a noticeable delay. Since all those is_$foo methods aren't even documented, I suggest making this either optional or completely getting rid of it.

  2. This can be a big one. JIRA::REST::Class::Mixins::JIRA_REST() gets called quite often. In most cases, this will in turn call JIRA::REST->new(). Now, I use JIRA::REST's ability to load my jira credentials from ~/.jira. If I gpg-encrypt that file like a good employee, all the calls to JIRA::REST->new() result in one gpg decryption per call. My little script takes approximately 1s with a plain text .jira file and 18 s(!) with an encrypted one. Hacking JIRA::REST::Class::Mixins::JIRA_REST() so that it caches the JIRA::REST instance in a package variable, encrypting the file gives me almost no performance penalty.

Please let me know if you want a pull request or two. Or if you have better ideas that tackle those problems.

Cheers,
Manni

Have JIRA::REST::Class::Issue->add_subtask() get type ID from the project or be passed as a parameter

JIRA::REST::Class::Issue->add_subtask() is currently hardcoded to use issue type ID 8.

I should accept a parameter that's either the name of an issue type, an issue type ID, or an issue type object. If no parameter is passed, I should query the project to find out what subtask types there are, and if there's only one, use that. If there aren't any, or there are more than one, I should throw an exception.

Tracked as JRC-2 on my personal JIRA server.

SSL_verify_none

Docs refer to SSL_verify_none but the version I just installed is using the lowercase ssl_verify_none

allow anonimous acess to JIRA API

Sometimes if one access public JIRA API he does it anonymously, without credentials being added. Looks like JIRA-REST-Class implies a credentials should be set?

Time for another release to cpan?

Hi Packy!

Don't want to bother you, but I would very much appreciate a new cpan release. I'm trying to get my coworkers to use a little tool I built and currently, I have to ship a patched version of JIRA::REST::Class::Factory.

username and password accessors return undef when Config::Identity is used

I have a file $HOME/.jira containing my jira credentials.
I (successfully) use JIRA::REST::Class to access my JIRA instance.
But when calling the username accessor, it will simply return undef.
Looking at the code, I'm not sure how the username field is supposed to be populated when Config::Identity is used.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.