udaykiran19491/user-stories-from-tawos-for-llm-fine-tuning huggingface dataset:
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "The gradle application task should get us most of the way to create a distributable artifact akin to what you see when downloading tomcat/jetty etc.  Now there is a launch task  task(launch, dependsOn: 'classes', type: JavaExec) {   main = 'org.springframework.xd.dirt.stream.StreamServer'   classpath = sourceSets.test.runtimeClasspath  }   The same main should be referenced in the application plugin, a task to create a .zip distributable is needed.  Ideally would be nice to  1. download .zip 2. unzip 3. cd spring-xd/bin 4. xdserver start   and gracefully shutdown later with   5. xdserver stop  I don't know if we can/should bundle redis, I think we should bundle it.  The scripts can be for unix/linux and for windows.    Discuss a brew based install as well. "
Answer: 10192.0

User story: "The difference between saving a new metric and updating an existing one needs to be defined.  Suggest that if we try to save when an existing counter is already in the database to throw exception, such as DataIntegrityViolationException."
Answer: 563170.0

User story: "Nested tuple structures shoudl be supported,  getTuple(int index), getTuple(String name)"
Answer: 15226.0

User story: "Replace the use of Jedis with Lettuce as it has higher performance"
Answer: 10575.0

User story: "A Spring Integration based @ServiceActivator that counts the occurrence of field names, from either a tuple data structure or a POJO, using the Spring XD metrics support."
Answer: 11909.0

User story: "A Spring Integration based @ServiceActivator that counts the number of messages using the Spring XD metrics support"
Answer: 2917.0

User story: "Start to explore how the DSL can cover both advanced (non-linear) spring integration flows as well as spring batch jobs."
Answer: 210025.0

User story: "syntax:  {code} tap @ somechannel --key=value | somecounter {code} "
Answer: 1799.0

User story: "Currently these implementations are in the spring-xd-dirt module, but they should be moved into spring-integration-redis. We are already depending upon Spring Integration 3.0 snapshots since the ChannelRegistry implementation is not yet at a milestone, so this should be okay for the Redis Channel Adapters also - until Spring Integration M2 is released."
Answer: 366660.0

User story: "There is duplicated code in Redis based repositories that related to expiry behavior, move into a common shared helper class and/or base class."
Answer: 10441.0

User story: "RedisCounterRepository and RedisGaugeRepository have duplicated code that needs to be factored out into a one place.  One such duplication is the determination of the key name to use for persistence.  This should be abstracted out into a strategy helper class."
Answer: 8844.0

User story: "This provides common CRUD behavior and a shared interface that can be useful in testing scenarios.  "
Answer: 14652.0

User story: "Gradle application plugin is a good starting point.  this should be the main server that would host SI based modules to do syslog->file ingestion (as an example)"
Answer: 6143.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "TODO: break out into sub-task or other stories."
Answer: 388170.0

User story: "multi project build. - look to Spring Framework for source of starting point."
Answer: 10054.0

User story: "bamboo based"
Answer: 3570.0

User story: "A field-value counter is useful for bar chart graphs, Strings on x-axis and count on y-axis.  Maps well to zset in redis. Implementations for in-memory and redis."
Answer: 41159.0

User story: "A simple counters can increment/decrement a number.  Implementations for in-memory and redis."
Answer: 23821.0

User story: "A rich gauge stores a number and also rmd, min, max. Implementations for in-memory and redis."
Answer: 43220.0

User story: "A gauge just stores a number.  Implementations for in-memory and redis."
Answer: 27284.0

User story: "Initial simple handcoded implementation for straight through pipe and filter model, e.g. a | b | c"
Answer: 24752.0

User story: "create enough of a design to develop additional stories."
Answer: 402747.0

User story: "When there is support for boostrapping a http server in the reactor project, and inbound SI adapter and associated XD source module should be created."
Answer: 402750.0

User story: "Have a syslog.xml config file that can be added to a module and registered with a module registry."
Answer: 32018.0

User story: "The tuple data structure should be backward compatible in functionality for use in spring batch.  Porting over FieldSet tests in spring batch to use the tuple data structure is one way help ensure that compatibility."
Answer: 29618.0

User story: "Simple file writer that has existed in the spring hadoop samples."
Answer: 125888.0

User story: "Base integration of core HDFS writer functionality with Spring Batch."
Answer: 37581.0

User story: "Needs some investigation on how the update information from Spring Batch listeners can be sent as a message across modules in a single node configuration as well as across JVMs in a distributed node configuration."
Answer: 10275.0

User story: "A NXRM PM likes to ensure customers cannot delete the source or target blob stores during the execution of the task such that the task can successfully move all the blobs.     "
Answer: 48778.0

User story: "Consolidate identical implementations of the enum {{WritePolicy}} into one that can shared between Orient and NewDb."
Answer: 12.0

User story: "A Remote Code Execution vulnerability has been found in Nexus Repository Manager. In the right circumstances a user could be tricked into running arbitrary code on their system."
Answer: 21667.0

User story: "A Reflection XSS vulnerability has been found in Nexus Repository Manager. A specially crafted request could embed javascript into content that would later be seen by another user."
Answer: 21660.0

User story: "A Reflection XSS vulnerability has been found in Nexus Repository Manager. A specially crafted request could embed javascript into content that would later be seen by another user."
Answer: 21680.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "Add additional format support to Import:   * NuGet   * npm"
Answer: 7.0

User story: "Display a count of vulnerabilities and a link to OSS index when a component is selected in NXRM    *Acceptance criteria*   * Vulnerability results are shown for components/assets in the browse view   * Show the number of vulnerabilities when greater than 0   * Vulnerabilities should show for all supported formats (bower, maven2, npm, nuget, p2, pypi, rubygems, yum)   * Vulnerabilities should only show on proxy repos   * This feature should only be available in NXRM OSS while we develop a solution for PRO.   * This feature should be disabled when an IQ server is used while we developer a solution that uses the IQ data."
Answer: 28797.0

User story: "*Acceptance Criteria*   * <USER>Crowd REST API accessible under both /<USER>and /v1 prefixes   * /<USER>atlassian-crowd API is hidden from Swagger UI   * Relocate API from /<USER>atlassian-crowd to /v1/security/atlassian-crowd"
Answer: 8747.0

User story: "The Security* API covers a few concepts:   * Content Selectors   * Privileges   * SSL Certificates   * Users   * Roles   * User Sources   * Realms    *Acceptance Criteria*   * Security REST API accessible under both /<USER>and /v1 prefixes   * /<USER>API is hidden from Swagger UI"
Answer: 110136.0

User story: "*Acceptance Criteria*   * Routing Rules REST API accessible under both /<USER>and /v1 prefixes   * /<USER>API is hidden from Swagger UI"
Answer: 5649.0

User story: "We want to update /<USER>repositories endpoints to /v1/repositories endpoints so customers can adopt and use these endpoints without worrying about the stability stigma from having a <USER>label.    *Acceptance Criteria*   # Update */<USER>repositories* to */v1/repositorySettings* and ensure both /<USER>and /v1 prefixes can access the same API logic.   # Update the */<USER>repositories/***/** REST APIs to */v1/repositories/***/** and ensure both  /<USER>and /v1 prefixes access the same API logic.   # /<USER>APIs are hidden from Swagger UI    *Notes*   * We are not changing the REST API endpoint /v1/repositories. This endpoint lists repositories and is intended to be used by CI/CD tools like Jenkins. Not changing this endpoint to ensure we don't impact customer's existing CI/CD pipeline."
Answer: 110439.0

User story: "*Acceptance Criteria*   * License REST API accessible under both /<USER>and /v1 prefixes   * /<USER>APIs are hidden from Swagger UI"
Answer: 5826.0

User story: "*Acceptance Criteria*   * LDAP REST API accessible under both /<USER>and /v1 prefixes   * /<USER>APIs are hidden from Swagger UI"
Answer: 9842.0

User story: "*Acceptance Criteria*   * IQ REST API accessible under both /<USER>and /v1 prefixes   * /<USER>APIs are hidden from Swagger UI"
Answer: 5755.0

User story: "*Acceptance Criteria*   * Email REST API accessible under both /<USER>and /v1 prefixes   * /<USER>APIs are hidden from Swagger UI"
Answer: 11550.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "     *Acceptance Criteria*   * BlobStore rest endpoints are accessible under both /<USER>and /v1 path prefixes.   * /<USER>API is hidden from Swagger UI"
Answer: 8721.0

User story: "Create an Export task to save components and assets from NXRM 3 to a directory that can be imported again in another NXRM 3 instance to facilitate copying of them between NXRM 3 instances."
Answer: 44599.0

User story: "Visual studio and Nuget CLI users can search for Nuget packages in a group repository using the V3 API    *Acceptance Criteria:*  1. Packages can be found using Search API by special fields such as packageid, id, title and so on  2. Packages can be found by keywords  3. All search results will be merged, all links will be replaced to group repo link, duplicates will be filtered or removed    Decided to add NXRM property for a *maximum number of results. By default 250*  For example when this property is 250 then you cannot see more results, than 250  Similar property exists in npm and nuget v3 hosted"
Answer: 72279.0

User story: "As a user of Maven and REST, I would like the ability to create and update a group repository via the API."
Answer: 92223.0

User story: "*Acceptance criteria*  * The following section needs updating to include the latest formats [https://help.sonatype.com/repomanager3/high-availability#HighAvailability-KnownIssuesandLimitations |https://help.sonatype.com/repomanager3/high-availability#HighAvailability-KnownIssuesandLimitations ] (Missing formats: Cocoapods, Conda, R, Helm, P2, Conan)  * Add a new column to https://help.sonatype.com/repomanager3/formats that says whether the format has HA-C support or not. (Formats without HA-C: Apt, Go, Cocoapods, Conda, R, Helm, P2, Conan)  "
Answer: 25778.0

User story: "*Acceptance Criteria*  * Users can proxy CentOS 8 yum repositories that use the new modules.yaml.gz metadata files.    *Background*  Centos ships now with new repository file format within repositories modules.yaml.gz    Apparently Nexus does not support these files as they are not visible in repobrowser although other files from the repo are.    These files being missing makes Nexus unusable for CentOS 8."
Answer: 20066.0

User story: "Accepted criteria:  * User should be able to set up a cleanup policy for hosted/proxy Helm repository"
Answer: 50419.0

User story: "See [https://github.com/sonatype-nexus-community/nexus-repository-helm/issues/8] fro more context.         Acceptance criteria:   * Helm proxy repository can be configured with two different addresses - index URL and charts storage URL"
Answer: 225968.0

User story: "The purpose of this story is to track the documentation changes required to drop official support for IE9 and IE10 from NXRM.    The following page needs to be modified: https://help.sonatype.com/repomanager3/system-requirements#SystemRequirements-WebBrowser"
Answer: 71678.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "Although there is no format specific data available for Go support the format should still enable the format specific feature to be consistent with other core formats."
Answer: 756566.0

User story: "As part of the onboarding process, possibly as part of NEXUS-19461 ask the admin user to choose whether anonymous access should be enabled.    Acceptance   * Don't bug existing users   * Tests continue to pass, ensure there's a development-friendly mode   * Anonymous access should be the default   * Don't impair REST-provisioned instances    Notes   * This feature should explain the two choices clearly so users understand which one they should choose.     "
Answer: 101809.0

User story: "In order to facilitate administrating NXRM we need a REST endpoint which can be used to reset the user token for a given user."
Answer: 158174.0

User story: "In order to support managing teams we need to be able to support CRUD operations for Content Selectors."
Answer: 263961.0

User story: "As part of initial server configuration some administrators may need to configure the IQ server used by NXRM. We may want a separate endpoint to enable/disable the server."
Answer: 204546.0

User story: "As part of initial server configuration some administrators may need to upload a license file."
Answer: 220327.0

User story: "As part of initial server configuration some administrators may need to configure the LDAP server(s) used by NXRM. They would also need to be able to change the order of the LDAP servers which would be a separate endpoint."
Answer: 223247.0

User story: "As part of initial server configuration some administrators may need to configure the email server used by NXRM. They would also need to be able to enable & disable the server which may be separate endpoint(s)."
Answer: 216048.0

User story: "Add REST endpoints to perform CRUD operations on users."
Answer: 115589.0

User story: "*Acceptance*   * Add a health check that fails if a cluster doesn't have three nodes"
Answer: 41253.0

User story: "*Background*    We have a small-but-growing number of automated system status checks, but they are not prominent in the UI. Some reflect critical problems (e.g. NEXUS-18706), but there's no warning whatsoever unless an admin generates a support zip or digs into the UI.    *Acceptance*   * When a health check is failing, raise a visible alarm in the admin UI   * We don't want failing system status check alerts visible to non-admin users.    *Note*    This will trigger the need to schedule system status checks being run on a periodic basis, since they are currently run on demand."
Answer: 37230.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "*Background*    Currently, when HA-C customers generate a support zip, they almost always fetch a single support zip. Also, in some cases the admin trying to obtain the support zip doesn't have the ability to reach specific nodes to fetch all three manually.    *Acceptance*   * There a method in the UI for users to generate and fetch support zips for their entire cluster.   * This should not fail if some nodes are down! Best effort is necessary. (Inability to get a support zip from the one working node is worse than not getting all three.)"
Answer: 103718.0

User story: "Due to performance issues and reports of confusion over issues trying to use this feature for audit like purposes, we are disabling the asset download count feature in 3.15.0.    Note, NuGet maintains its own download count in the metadata external to Sonatype and is unaffected by this change."
Answer: 48777.0

User story: "NEXUS-16703 made CSEL and JEXL content selectors work the same for expressions with a leading slash. The book and support documentation all push users towards using a leading slash in their path expressions.    However there is still a discrepancy if you create a content selector with a path expression that doesn't have a leading slash. It will match in CSEL because internally the asset path doesn't have a leading slash, but it won't match in JEXL because it prefixes the path with a slash when creating the JXEL model (this was done previously to get JEXL to work with expressions that have a leading slash). Note that this also happens on master before NEXUS-16703, so this is not a recent regression.    Also note that expressions migrated over from NXRM 2 should have leading slashes because that was the only supported approach. So this story is specifically dealing with expressions created in NXRM 3 that go against the advice to use a leading slash.    The workaround is simple: introduce a leading slash as shown in the book examples."
Answer: 158943.0

User story: "Currently, blobstore configuration is immutable. However, there are situations where the blobstore configuration needs to be changed. For instance, if the NXRM admin configured an S3 blobstore with a set of access keys that have been compromised. In this case, the admin would need to update the access keys in the blobstore configuration.     As an NXRM admin, I need to be able to make changes to the blobstore configuration so that I can correct potential configuration errors so that I can bring a blobstore back online.     *Acceptance Criteria*  * if a blobstore is offline, the configuration of the blobstore can be updated  * Quota config should only be editable when the user selects editing mode per NEXUS-18317"
Answer: 52040.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "In certain circumstances database records in an HA cluster can become out of sync with the other nodes in ways that OrientDb is unable to reconcile.  The symptoms of this is that messages like these will be seen in the log:       {quote}2018-09-10 12:49:52,698-0400 ERROR [nexus_QuartzSchedulerThread] EnterpriseSandbox_Secondary_2 *SYSTEM com.orientechnologies.orient.core.db.OPartitionedDatabasePool$DatabaseDocumentTxPooled - Error on transaction commit `009A44E1`   com.orientechnologies.orient.server.distributed.ODistributedException: Quorum (2) cannot be reached on server 'DE8A74B3-C1002895-1912C78F-3FC2A144-CC0335B3' database 'config' because it is major than available nodes (1)  {quote}     {quote}2018-09-19 00:00:05,016-0400 ERROR [Timer-1] EnterpriseSandbox_Tertiary_3 *SYSTEM com.sonatype.nexus.hazelcast.internal.orient.SharedHazelcastPlugin - [8268DBA0-AA8B5518-9A85E312-EDF0E6F3-E03887CA]<-[DE8A74B3-C1002895-1912C78F-3FC2A144-CC0335B3] Error on installing database 'config' in /binrepo/nexus/nexus-work3/nexus3/db/config   com.orientechnologies.orient.server.distributed.ODistributedException: Skipped request id=2.214812 task=deploy_db on database 'config' because LSN\{segment=40, position=7991} < current LSN\{segment=41, position=17780}  {quote}   Additionally the node in question will likely start returning error responses.    We have identified some of the cases where this can occur, and work is underway to fix those.    But there are other potential cases where a node can get out of sync, and realistically it may not be possible to prevent all of these, since some of them can involve external conditions (such as clock jumps) that are not in our control.  So in addition to fixing cases where circumstances exist that can cause a node to get unresolvable record conflicts we should also provide Nexus administrators with tools needed to identify when a node has conflicts that can't be resolve automatically, and a UI where an administrator can manually resynchronize nodes.      "
Answer: 298427.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: *Background*    1. Start up Nexus 3.13.0 with default configuration   2. Create a user "test" that does not have read or browse permissions to the nuget-hosted repository   3. Attempt to upload a nuget component to nuget-hosted using the REST API   4. Observe that this fails with 404 (not found)    Bizarrely, if I grant the test user read access to the nuget-hosted repository the request fails with a 403, but if they have both read and browse privileges it fails with a 400!    *Acceptance*    If the REST API upload fails due to permissions Nexus should always return 403 (forbidden).      {code:java}  $ curl -v -F "nuget.asset=@NuGet.CommandLine.4.6.2.nupkg" "http://localhost:8081/service/rest/v1/components?repository=nuget-hosted" -u test:test  *   Trying ::1...  * TCP_NODELAY set  * Connection failed  * connect to ::1 port 8081 failed: Connection refused  *   Trying 127.0.0.1...  * TCP_NODELAY set  * Connected to localhost (127.0.0.1) port 8081 (#0)  * Server auth using Basic with user 'test'  > POST /service/rest/v1/components?repository=nuget-hosted HTTP/1.1  > Host: localhost:8081  > Authorization: Basic dGVzdDp0ZXN0  > User-Agent: curl/7.54.0  > Accept: */*  > Content-Length: 1686723  > Expect: 100-continue  > Content-Type: multipart/form-data; boundary=------------------------c3fab955e8f61014  >   < HTTP/1.1 100 Continue  < HTTP/1.1 404 Not Found  < Date: Mon, 10 Sep 2018 14:28:36 GMT  < Server: Nexus/3.13.0-01 (PRO)  < X-Content-Type-Options: nosniff  < X-Siesta-FaultId: 2df77cde-4406-4288-9658-ba7b7ab09f4b  < Content-Length: 0  * HTTP error before end of send, stop sending  <   * Closing connection 0  {code}
Answer: 20307.0

User story: "As a user, if I try to search using a keyword of the form <group>:<artifact>:<version>:<extension>:<classifier> I expect to see search results that match my search term.    This form matches the syntax supported by nxrm 2.    These search strings could be group:artifact, group:artifact:version, group:artifact:version:extension, or group:artifact:version:extension:classifier. Currently the query string used for the search field treats this as a valid search of the form <search field>:<value> which will return nothing (or it will just be an invalid query). When we think the keyword search might match this we could switch from a must term in the boolean to two should terms. One which builds a boolean search for the components of this search and one that does the normal keyword search in order to ensure that we get some results.  "
Answer: 80071.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "We are testing Nexus-3 PRO 3.12.1-01 & S3 Integration and hit a road block w.r.t creating the S3 based Blob store.. We use the Bring your own key i.e aws-kms  and not the default aws provided kms key as part of Server side encryption on the S3 buckets for obvious security reasons in our organisation.         Current policy mandates that the request header should have the Server side encryption kms-keyId for the PUT’s to succeed and when I am trying to create a blobstore by specifying the existing bucket details it throws Access denied error because of the missing kms keyId in the request.         I don’t see any field exposed to provide this configuration details i.e listed below on the Nexus-3 PRO 3.12.1-01 or on 3.13 version and was suggested to raise a enhancement request by the support team as this is preventing us to use the s3 for HA configuration.         a.       SSE Alogirthm type (Example : aws:kms)    b.      SSE KMS key Id  (Example : 6fxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)    c.       Storage Class (Example : Standard)         *_Example arg params i.e sent from the aws Cli to upload any objects to s3:_*    --sse aws:kms --storage-class STANDARD --sse-kms-key-id : 6fxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx     "
Answer: 537749.0

User story: "*Background*    As part of NEXUS-14876, component and asset tags are now visible in expanded metadata.    *Acceptance*   * Users can click through from a tag in the metadata detail panels to search results, showing all components associated with the tag."
Answer: 80064.0

User story: "*Acceptance*    Amend the documentation so that users know how to subdivide Docker repositories based on tag names. Make sure they know it's leaky (since you can request content by hash, in theory.)"
Answer: 514480.0

User story: "All published SNAPSHOTs appear in the tree browser, cluttering the view. The expectation is that we can quickly browse to the latest snapshot, and access older snapshots as needed (though not as frequently).    *Acceptance criteria*  * Nest all related snapshots under a single parent node.  * If the parent node is selected, show details for the latest snapshot version.  * If the parent is expanded, show a list of all published snapshots, ordered by timestamp (latest first)  * If one of these published snapshots is selected, show the relevant details for that snapshot.    h5. Technical Notes  * To accomplish this we'll have to parse the version string from the results to pull out the timestamp.  * Possibly also we can pull the latest version from maven-metadata.xml"
Answer: 104823.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "*Acceptance*   * Allow staging operations on the basis of content selector permissions   * e.g. admins can allow staging operations to and from portions of repositories, rather than at the whole-repo level as specified in --NEXUS-15153--   * In situations where users don't have privileges to complete the operation*, the entire operation should return an error code.    e.g. components ABC are in Repo 1 (R1).   # A user can see ABC in R1   # User initiates move ABC to R2   # System checks permissions, finds user can't delete A from R1, and can't write C to R2."
Answer: 94942.0

User story: "*Acceptance*   * Admins can add certificates to the NXRM trust store via a REST API call.    c.f. https://groups.google.com/a/glists.sonatype.com/forum/?utm_medium=email&utm_source=footer#!msg/nexus-users/lkFXP8eTSH4/P0qxBHtqCAAJ"
Answer: 737495.0

User story: "Support move/delete for components in nuget hosted repositories."
Answer: 162435.0

User story: "Support move/delete for components in yum hosted repositories."
Answer: 154959.0

User story: "Changes since last release we picked up (2.2.31):    https://github.com/orientechnologies/orientdb/wiki/OrientDB-2.2-Release-Notes#2234---april-12-2018  https://github.com/orientechnologies/orientdb/wiki/OrientDB-2.2-Release-Notes#2233---march-5-2018  https://github.com/orientechnologies/orientdb/wiki/OrientDB-2.2-Release-Notes#2232---february-5-2018    Note: 2.2.33 introduced an HA regression around sync'ing of delta changes which was fixed in 2.2.34"
Answer: 54800.0

User story: To support staging functionality, we should make it possible to search for components by tag. This will enable people to quickly retrieve groups of related components (e.g. by build). Keep in mind that tags can be used by non-staging related uses, so we shouldn't use the word "staging" in the implementation.    *Acceptance*   * Add a "tag" criteria to the search feature (for all formats)   * Tag search elements only show up for Pro-licensed installs   * Support partial matches and wildcarding    
Answer: 272012.0

User story: "*Acceptance criteria*   * A user can select an RPM and upload it to a yum hosted repository.   * An RPM can be uploaded to any path in the repository that is at or deeper than the configured repodata depth. "
Answer: 534601.0

User story: "Multiple XSS vulnerabilities have been found in NXRM 2.x. Sonatype recommends immediate upgrade to 2.14.6 or later.    For more information, please see our [Support Knowledge Base article|https://support.sonatype.com/hc/en-us/articles/360000134928]."
Answer: 1.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "*Background*    Currently the asset last access time is updated every 1 minute at the most frequent and this is not adjustable. See NEXUS-15469. This can cause excessive updates to the database triggered by asset downloads.    *Acceptance*   * Make the default 'last accessed time' update rate 12 hours (not 1 minute).   * Modify the UI so that it only displays the day (and leaves off hours/minutes/seconds) for this date.   * Download count will not be impacted."
Answer: 120937.0

User story: "NXRM2 Yum users can deploy their Maven and Yum artifacts into a single repository because the Yum implementation in NXRM2 is built on Maven. In NXRM3 we have built Yum as a first-class citizen and therefore don't have all of the Maven logic. Any users migrating who are using maven to make and deploy RPMs will need a recommendation.    *Acceptance criteria*   * Produce a recommendation of the best migration approach   * e.g.   ** Tough luck, redo your build - as you would if you were doing maven2 jars built into a docker build   ** Come up with a fancy maven trick that's minimally invasive for customers   *** e.g. forking the deploy plugin that knows how to split   ** Implement hybrid repos in nxrm 3   *** for real   *** NXRM has a diverter route (as a capability?) for maven repos that can move yum assets somewhere else   *** Use a reverse proxy to fake a hybrid repo (KB article), but diverting content behind the scenes"
Answer: 1390855.0

User story: Searching is a confusing experience in NXRM3. People don’t realize they’re entering an elasticsearch string, so they don’t get the results they expect (e.g. dashes and forward slashes aren’t interpreted literally).    Exposing raw elasticsearch functionality is probably the wrong approach anyway. It’s powerful and flexible, but does far more than most people need. Let’s introduce a translation layer that maps to the way people expect to use search ([~<USER> can help us better understand user expectations).    Acceptance criteria:    * Treat search strings as partial matches in all fields (e.g. my.search.string is equivalent to \*my.search.string\*)  * Allow people to do an exact match by surrounding their query in quotes (e.g. "my.search.string")  * Work with [~<USER> to figure out if there are any other expressions we need to support  * Feature flag if there is worry of work crossing releases
Answer: 283308.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "Create a new REST endpoint for Repository interaction; initial phase will only support a small number of operations    *Acceptance*   * User has the ability to retrieve the list of configured repositories in NXRM3   * Returned information should include, at a minimum, the unique repository name, format, and location (URL)   ** Consider including additional metadata during implementation as desired     * Visibility of repos through this endpoint should match the visibility of repos on the UI - it should abide by the same permission scheme    *Notes*   * 'Bucket' doesn't have format on it, so unlike the other REST endpoints this will probably be driven by the config db."
Answer: 82185.0

User story: "*Background*    This is seemingly cosmetic issue for the REST API. I think it was discussed in the past, as we were planning development of long term public REST API for Nexus 3, but I don't see an issue to track it.    The REST APIs are being mounted under   - /service/siesta/rest/<USER>tasks   - /service/siesta/rest/v1/tasks    The /service/siesta part was not intended to be a long term mount point. To my knowledge it was only kept to make getting /service/siesta/rest/v1/script out the door quicker.    *Acceptance*   * Expose the NXRM 3 public REST api under /service/rest/v1   * This includes the existing scripting endpoint, so update the examples for the scripting API   * the previous /service/siesta/rest/v1/script endpoint has been moved to /service/rest/v1/script  - there is no shim - release notes will announce scripts depending on the old URL will need to be updated "
Answer: 41350.0

User story: "*Acceptance*   * Add email settings to the scripting API."
Answer: 836346.0

User story: "Customers are trying to understand how NXRM is using their disk space; currently it's <USER>for them to ascribe the size of a blob store to particular repositories.    This is a simpler version of NEXUS-13056.  h4. Acceptance   * Admins can run a script to read the properties files of a blob store to summarize which repositories are using the blob store, and how much space each is consuming   * Tabulate both the total size, and the size that could be reclaimed by compacting (i.e. soft-deleted blobs)    h4. Solution    We have a script that iterates over all files in a single blobstore and reports the total size of all files per repository in that blobstore and the amount of disk that could be reclaimed by running a compact blobstore task on that blobstore.   # Visit this support page: [https://support.sonatype.com/hc/en-us/articles/115009519847]   # Follow the instructions for *Listing the Size of File-based Repositories and Blobstores*"
Answer: 41608.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "In Nexus 2.x you could right click a Browse Storage tree node and choose to delete it. This is extremely handy and also is something we rely on instructing end users to do to solve problems with Nexus 2.x    Nexus 3.x tree view should have a similar feature. When the node is deleted, appropriate background threads update whatever appropriate metadata is associated with it in response.    Having this feature at least for maven 2 hierarchies would maintain functionality customers expect.    *Acceptance*  * There is a way for a user to delete a node.  ** A panel? A button at the top? A panel may be useful for showing other information later, e.g. file count, total size, etc. A button right in the row?  * That option should be enabled if the user has permission to delete at least one asset  * The delete operation should be confirm (since they may delete a lot of stuff)  * The operation should delete whatever the user has permissions to delete.    *Notes*  * It may be necessary for the deletion operation to be asynchronous, since it's so much content.  * Are there any affinities with the existing staging code that deletes and/or moves search results? (Those are synchronous, however.)    Note the spike for impl plan has been completed see this comment for details https://issues.sonatype.org/browse/NEXUS-17880?focusedCommentId=522630&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-522630"
Answer: 614467.0

User story: *Background*    In Nexus 2, I could add a specific logger to have login attempts (successful, and failed) shown in the 'nexus.log' by adding a DEBUG level logger for "org.sonatype.nexus.feeds.record.NexusAuthenticationEventInspector". The log would include  something like this:    2017-10-13 09:35:25,359-0400 DEBUG [esh-1-thread-8] *UNKNOWN org.sonatype.nexus.feeds.record.NexusAuthenticationEventInspector - Unable to authenticate user [badid] from IP address 127.0.0.1    I could not find a way to monitor similar login events in Nexus 3. The "Audit" UI didn't show such events, and neither did the Global Web Hooks. I saw some information logged when creating TRACE level loggers at: org.sonatype.nexus.security, and org.sonatype.nexus.internal.security; however this log info was not useful for the purpose of general tracking of login activity.    *Acceptance*   * After all realms have fired and the user was not authenticated, but there is a user ID, then log the following at INFO:   ** the userid   ** IP address   ** User Agent   * Use a separate logger for these statements, so they can be controlled separately.    e.g. INFO Failed authentication userid: \{}, client: \{}, user-agent: \{}
Answer: 1458503.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "*Acceptance*   * This sub-resource accepts the same inputs as NEXUS-11745 (search REST endpoint), except it replies with an ordered JSON list of assets   * Until NEXUS-11744 (order by 'latest') is implemented, it's fine if the ordering is unspecified (e.g. it emerges from Elastic Search scoring)    *Non-Requirements*    (Just for clarity)   * We're trying to avoid format-specific logic   ** For maven, if people want the 'jar' (which was a default in NXRM2), then they specify that as a search parameter. maven.extension-jar   ** Primary maven artifacts, as designated in POMs, aren't considered. Users have to ask for what they want.   ** Similarly for PyPI, it's users' responsibility to know if they want an egg, a wheel, if they care, etc. and to specify the search accordingly"
Answer: 31551.0

User story: "*Background*    As of -PE-165-, we now display the username of the person who uploaded a component. It was easy to do this because the information was already being stored, just not exposed.    *Acceptance*    In addition, we should do the same for IP address. See -NEXUS-10896- for more details."
Answer: 5493.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: If you proxy a yum repository in Nexus 3 whose remote has "sha" style checksums it will fail.       {noformat}  017-10-05 19:50:11,275+0000 WARN [qtp1956358891-277] *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Failure servicing: GET /repository/spacewalk-rhel7/repodata/repomd.xml  java.lang.IllegalArgumentException: Unsupported hash sha  at org.sonatype.nexus.repository.yum.internal.utils.YumFacetUtils.hashAlgorithmByName(YumFacetUtils.java:159)  at org.sonatype.nexus.repository.yum.internal.metadata.RepomdChecksumAndSizeUpdater.lambda$0(RepomdChecksumAndSizeUpdater.java:73)  at java.util.Optional.map(Optional.java:215)  at org.sonatype.nexus.repository.yum.internal.metadata.RepomdChecksumAndSizeUpdater.checksum(RepomdChecksumAndSizeUpdater.java:73)  at org.sonatype.nexus.repository.yum.internal.metadata.RepomdChecksumAndSizeUpdater.update(RepomdChecksumAndSizeUpdater.java:59)  at org.sonatype.nexus.repository.yum.internal.metadata.RepomdProcessor.lambda$0(RepomdProcessor.java:59)  at java.util.Optional.ifPresent(Optional.java:159)  at org.sonatype.nexus.repository.yum.internal.metadata.RepomdProcessor.process(RepomdProcessor.java:59)  at org.sonatype.nexus.repository.yum.internal.proxy.YumProxyFacetImpl.processRepomd(YumProxyFacetImpl.java:200){noformat}  An example of this style can be seen here:    [http://yum.spacewalkproject.org/2.5-client/RHEL/7/x86_64/repodata/]         As noted in the createrepo documentation:  {noformat}        -s --checksum                  Choose the checksum type used in repomd.xml and for packages in the metadata.  The default is now "sha256" (if python has  hashlib).  The                  older  default  was  "sha",  which is actually "sha1", however explicitly using "sha1" doesn’t work on older (3.0.x) versions of yum, you                  need to specify "sha".  {noformat}       We should consider adding support for this style of checksum, since an and user is often not in control of the checksum format that is used on the remote of a proxy repository.
Answer: 6848.0

User story: *Acceptance*   * Extend the search & download service so that users can sort the search results by 'latest version' (see below)   ** In the case of more than one, return the first-ordered result (since the 'best' result is unambiguous).   * There multiple standard "latest" orderings   ** format-specific ordering   *** maven2 ordering of component.version (as implemented by [Apache Maven Artifact Resolver|https://maven.apache.org/resolver/] ( formerly [Eclipse Aether|https://projects.eclipse.org/projects/technology.aether] which is being [migrated to maven-resolver|http://maven.apache.org/aether.html] )   *** semver ordering of component.version     
Answer: 763313.0

User story: "# Expand out the tree   # Type something in the filter box   # The tree collapses    This is especially annoying for formats like Yum where there will be a lot of assets (RPMs) under a directory and potentially 4-5 levels of directories."
Answer: 1235404.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: As a nexus administrator    I want to have multiple blobstores in one S3 bucket    so that I can use 1 S3 buckets for all my blobstores    *Assumptions*    At time of writing, the S3 Blobstore assumes that the bucket is exclusive to the blobstore (the content is stored at the root of the bucket).    If we provide administrators the ability to supply a "prefix" for all content in the S3 blobstore, this will allow them to have multiple blobstores sitting in one S3 bucket.    *Acceptance Criteria*    * The UI presents an option, empty by default, for a content prefix to use. When set, all content for the blobstore is stored under the prefix.    * Using the prefix allows multiple separate blobstores to co-exist in the same S3 bucket.
Answer: 564705.0

User story: "Managing the Realms is not supported yet via the REST API, only through the provisioning API    *Acceptance Criteria*  * list of available realms available in the UI can be achieved with the REST API   * query for current order can be achieved with the REST API    * change existing order, add realms that are active can be achieved with the REST API   * Bonus points: add the ability to update without providing the whole list  "
Answer: 1117128.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "*Background*    The yum client commands and yum configuration files [support dynamic variables|https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-yum-useful-variables.html]:    $releasever   This is replaced with the package's version, as listed in distroverpkg. This defaults to the version of the redhat-release package.    $arch   This is replaced with your system's architecture, as listed by os.uname() in Python.    $basearch   This is replaced with your base architecture. For example, if $arch=i686 then $basearch=i386.    The yum client can use these variables to dynamically construct the final URL of the repository from which to download yum metadata - for example in yum.conf:  {noformat}  baseurl=http://nexus:8081/repository/yum-proxy/$releasever/os/$basearch/  {noformat}  The advantage from a client perspective is a more flexible configuration.    Using Nexus 2.x Yum support or Nexus 3.5.0 Yum Proxy support, a Nexus administrator needs to create a single Yum repository for every combination of dynamic variable. This is because Nexus will only expect repodata at the root of the remote URL value of a proxy repo or at the base of a hosted repo.    This is not ideal since repositories are heavyweight and the management of these many repositories is not scalable if a repository is made for every unique variable combination.    Instead it should be possible to create a single Nexus repository that supports any unique combination of URL form used by the client *at a specific depth*. The base URL from the Nexus administrator perspective would be simply [http://nexus:8081/repository/yum-proxy/] and the administrator would configure a depth at which they expect the metadata about what is in the repository will be stored/calculated.    Example:   Client configures baseurl=[http://nexus:8081/repository/yum-proxy/$releasever/os/$basearch/]   Nexus has single yum proxy repo at [http://nexus:8081/repository/yum-proxy/] with a repodata metadata depth of '3' ( 3 path parts ). So metadata will be accessible under [http://nexus:8081/repository/yum-proxy/$releasever/os/$basearch/repodata/*]    Example:   Client configures baseurl=[http://nexus:8081/repository/yum-proxy/$basearch/$releasever]   Nexus has single yum proxy repo at [http://nexus:8081/repository/yum-proxy/] with a repodata metadata depth of '2'. ( 2 path parts ). So metadata will be accessible under [http://nexus:8081/repository/yum-proxy/$basearch/$releasever/repodata/*]    Note: this scheme does not mean repodata within a single Nexus repository can be at multiple depths - you would still need to create more than one repository per depth    *Acceptance*   * Support repos at a configurable depth inside a single aggregating repo   ** When we generate metadata, it's at the correct depth   ** Ensure we're only invalidating the appropriate metadata when content changes "
Answer: 65256.0
give resolution time in minutes for the given user story, only provide the number of minutes in the output without any other text

User story: "A organization shared Nexus instance is a central publishing point for Maven2 format SNAPSHOT artifacts. CI builds would typically publish SNAPSHOT versions of their projects many times per day and not distribute these externally.    When the Remove if Released option of the snapshot remover task is selected, the task looks in all hosted and proxy repositories for a matching release GAbV of a SNAPSHOT version.    For an instance with many proxy repositories containing release repos, this can add considerable overhead.    h4. Expected    - provide a task option to choose if releases should be checked for in hosted repositories only ( not proxy repositories )  - having this option selected should be the default value when creating the task, as it is considered much more common to have your SNAPSHOT in a release hosted repo than in some proxy repo  - when Remove if Released = true AND hosted repositories only = TRUE, proxy repositories should not be checked for matching release artifacts  "
Answer: 503668.0

User story: "As a systems developer, so that I can minimize downtime, I want to be able to access remote yum packages if the remote yum repository goes down    Acceptance Criteria:    * Access to metadata in SQLLite database format should be blocked   * If proxied metadata is changed, the metadata in the proxy repository will be updated when a package is requested   * Proxy repository must function if the remote repository goes down  ** The proxy will serve what cached components are currently available   * A user with sufficient privilege will be able to run the following commands:   ** yum install _<package name/s>_  ** yum update _<package name/s>_  ** yum check-update  ** yum remove _<package name/s>_  ** yum search _<keyword>_  ** yum list   * Deleting a yum component should function the same as yum remove, removing the dependencies as well     "
Answer: 599.0

User story: "*Acceptance*   * We want a clean system with no blob stores or repositories, starting up a Nexus Pro with clustered=true from a fresh install   * The ability for NXRM to ingest a license file on startup (e.g. by specifying where the license file is)   * Use the {{nexus.licenseFile}} nexus property to point to the license file   * Fails startup if {{nexus.licenseFile}} is set but that license file is invalid"
Answer: 28684.0

User story: "*Background*    As discovered in the field, some users have occasionally restored some databases, but not all of them. In other cases, restores were carried out using a set of export files taken from different exports. This can lead to unusable NXRM instances with an incoherent state.    *Acceptance*   * Modify the filenames of database exports so it's clear whether they were generated   * Disallow restores from incomplete sets, or sets with mismatched export times"
Answer: 34405.0