User-contributed projects reproducing issues logged against SPR JIRA. Note: this is not the Spring Framework issue tracker -->
Java JavaScript HTML AspectJ Groovy CSS Other
Pull request Compare This branch is 1 commit ahead, 137 commits behind spring-projects:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
SPR-0000-war-java
SPR-0000-war-xml
SPR-0000
SPR-10019
SPR-10022
SPR-10083
SPR-10095
SPR-10125
SPR-10243
SPR-10297
SPR-10307
SPR-10309
SPR-10327
SPR-10334
SPR-10344
SPR-10374
SPR-10440
SPR-10441
SPR-10485
SPR-10515
SPR-10549
SPR-10619
SPR-10655
SPR-10658
SPR-10697
SPR-10704
SPR-10710
SPR-10743
SPR-10765
SPR-10918
SPR-10934
SPR-10995
SPR-11016
SPR-11022
SPR-11101
SPR-11107
SPR-11193
SPR-11238
SPR-11281
SPR-11304
SPR-11322
SPR-11406
SPR-11441
SPR-11445
SPR-11474
SPR-11489
SPR-11491
SPR-11494
SPR-11504
SPR-11526
SPR-11532
SPR-11547
SPR-11660
SPR-11669
SPR-11723
SPR-11760
SPR-11761
SPR-11762
SPR-11775
SPR-11842
SPR-11844
SPR-11915
SPR-11948
SPR-12013
SPR-12033
SPR-12118
SPR-12132
SPR-12162
SPR-12165
SPR-12184
SPR-12194
SPR-12204
SPR-12229
SPR-12281
SPR-12287
SPR-12332
SPR-12361
SPR-12372
SPR-12432
SPR-12438
SPR-12459
SPR-12472
SPR-12481
SPR-12528
SPR-12531
SPR-12550
SPR-12558
SPR-12569
SPR-12577
SPR-12630
SPR-12640
SPR-12668
SPR-12669
SPR-12670
SPR-12695
SPR-12712
SPR-12725
SPR-12747
SPR-12848
SPR-12852
SPR-12999
SPR-13050
SPR-13075
SPR-13078
SPR-13102
SPR-13115
SPR-13124
SPR-5628
SPR-6428
SPR-6508
SPR-6564
SPR-6992
SPR-7093
SPR-7345
SPR-7664
SPR-7900
SPR-7913
SPR-7915
SPR-7943
SPR-7963
SPR-7985
SPR-8016
SPR-8122
SPR-8473
SPR-8482
SPR-8491
SPR-8492
SPR-8499
SPR-8502
SPR-8515
SPR-8522
SPR-8523
SPR-8536
SPR-8543
SPR-8582
SPR-8625
SPR-8639
SPR-8651
SPR-8658
SPR-8661
SPR-8663
SPR-8683
SPR-8711
SPR-8714
SPR-8725
SPR-8726
SPR-8736
SPR-8743
SPR-8761
SPR-8769
SPR-8806
SPR-8813
SPR-8824
SPR-8825
SPR-8853
SPR-8867
SPR-8905
SPR-8923
SPR-8937
SPR-8947
SPR-8955
SPR-8991
SPR-9031
SPR-9035
SPR-9119
SPR-9157
SPR-9176
SPR-9181
SPR-9183
SPR-9204
SPR-9209
SPR-9239
SPR-9243
SPR-9244
SPR-9290
SPR-9329
SPR-9374
SPR-9464
SPR-9566
SPR-9575
SPR-9584
SPR-9600
SPR-9601
SPR-9610
SPR-9637
SPR-9638
SPR-9646
SPR-9657
SPR-9667
SPR-9670
SPR-9702
SPR-9723
SPR-9756
SPR-9795
SPR-9818
SPR-9832
SPR-9838
SPR-9849
SPR-9851
SPR-9895
SPR-9931
SPR-9940
SPR-9943
SPR-9964
SPR-9989
.gitignore
README.md
create-repro-project.sh

README.md

Welcome!

This repository is designed to allow Spring users and team members to contribute self-contained projects reproducing issues logged against Spring's JIRA issue tracker at https://jira.springsource.org. It offers the following advantages over attaching .zip or even patch files to JIRA issues:

  • A streamlined process for evaluating issues so more bugs get fixed more quickly!
  • A set of template projects to choose from
  • Two-way communication with the Spring team based on working code
  • Improved code sharing across the Spring team
  • A back-reference and a valuable archive of small Spring projects across a wide range of use cases and features

All around a better way of interacting with the Spring team.

Logging an issue against Spring's JIRA issue tracker

  1. First, search SPR JIRA to see if your issue has already been reported. If so, there may already be a reproduction issue in this repository!
  2. If after searching an issue does not already exist, create a new issue
    • You will now have an issue named, for example, "SPR-9876". Make note of this, as you'll need it below when creating your project.

Using this repository to demonstrate the issue

Assuming you've encountered and created an issue in the core Spring Framework project you can now add a project to demonstrate it.

First-time setup

  1. Create a Github account if you don't already have one
  2. Fork this repository and clone it locally

Create a project that reproduces your issue

The idea is to create the smallest possible project to demonstrate the issue. The project may be built with Maven and must contain only sources, XML and other necessary text files. No JARs, please!

For the purpose of these instructions, we'll assume your new JIRA issue ID is "SPR-9876"

Steps

1. In your local clone of this repository, create a copy of the appropriate 'template' directory. Their names start with SPR-0000.

For Core Spring Framework issues:

cd spring-framework-issues
./create-repro-project.sh SPR-0000/ SPR-9876

For Spring MVC issues using XML configuration:

cd spring-framework-issues
./create-repro-project.sh SPR-0000-war-xml/ SPR-9876

For Spring MVC issues using Java config:

cd spring-framework-issues
./create-repro-project.sh SPR-0000-war-java/ SPR-9876

2. Review the list of dependencies and version numbers and modify the pom.xml as necessary.

3. Import the project into your IDE and modify it as necessary to reproduce your issue.

  • It is already a buildable Maven project, so you may use your IDE's built-in support for Maven to do the importing.
  • If this is a web project, you can run it on the command line with an embedded container: mvn clean package cargo:run -Ptomcat8

4. Add, commit, and push your local fork

git add SPR-9876
git commit -m "Add repro project for SPR-9876"
git push

5. Send a pull request from the Github web interface

  • The Spring Framework team will be notified and will look at your request

... and that's it!

FAQ

What if my issue is not a bug, but an improvement or new feature request?

In certain cases, it may make sense to submit a project for improvement requests. Feel free to submit a project here for your issue if you think it will help us to understand the scenario better.

What about patches against the Spring Framework itself? Should I still attach those to my JIRA issue?

Yes, patches against JIRA will always be supported, but keep in mind that the Spring Framework project itself is hosted on GitHub as well, and pull requests are even better! See the "Contributing" section of the Spring Framework readme for details.

Can I still attach .zip files to my JIRA issue? Is it required to use this repository?

Yes, you may still attach zip files if it works best for you. Submitting pull requests against this repository as described above is the mechanism that the Spring team prefers, but what's most important is that we get code from you that reproduces the problem! Please consider this approach, but zip files are still OK.