* Restrict repository indexing by file extension
* Use REPO_EXTENSIONS_LIST_INCLUDE instead of REPO_EXTENSIONS_LIST_EXCLUDE and have a more flexible extension pattern
* Corrected to pass lint gosimple
* Add wildcard support to REPO_INDEXER_EXTENSIONS
* This reverts commit 72a650c8e42f4abf59d5df7cd5dc27b451494cc6.
* Add wildcard support to REPO_INDEXER_EXTENSIONS (no make vendor)
* Simplify isIndexable() for better clarity
* Add gobwas/glob to vendors
* manually set appengine new release
* Implement better REPO_INDEXER_INCLUDE and REPO_INDEXER_EXCLUDE
* Add unit and integration tests
* Update app.ini.sample and reword config-cheat-sheet
* Add doc page and correct app.ini.sample
* Some polish on the doc
* Simplify code as suggested by @lafriks
* Create API endpoints for repo topics.
Signed-off-by: David Svantesson <[email protected]>
* Generate swagger
Signed-off-by: David Svantesson <[email protected]>
* Add documentation to functions
Signed-off-by: David Svantesson <[email protected]>
* Grammar fix
Signed-off-by: David Svantesson <[email protected]>
* Fix function comment
Signed-off-by: David Svantesson <[email protected]>
* Can't use FindTopics when looking for a single repo topic, as it doesnt use exact match
Signed-off-by: David Svantesson <[email protected]>
* Add PUT /repos/{owner}/{repo}/topics and remove GET /repos/{owner}/{repo}/topics
* Ignore if topic is sent twice in same request, refactoring.
Signed-off-by: David Svantesson <[email protected]>
* Fix topic dropdown with api changes.
Signed-off-by: David Svantesson <[email protected]>
* Style fix
Signed-off-by: David Svantesson <[email protected]>
* Update API documentation
Signed-off-by: David Svantesson <[email protected]>
* Better way to handle duplicate topics in slice
Signed-off-by: David Svantesson <[email protected]>
* Make response element TopicName an array of strings, instead of using an array of TopicName
Signed-off-by: David Svantesson <[email protected]>
* Add test cases for API Repo Topics.
Signed-off-by: David Svantesson <[email protected]>
* Fix format of tests
Signed-off-by: David Svantesson <[email protected]>
* Fix comments
Signed-off-by: David Svantesson <[email protected]>
* Fix unit tests after adding some more topics to the test fixture.
Signed-off-by: David Svantesson <[email protected]>
* Update models/topic.go
Limit multiple if else if ...
Co-Authored-By: Antoine GIRARD <[email protected]>
* Engine as first parameter in function
Co-Authored-By: Antoine GIRARD <[email protected]>
* Replace magic numbers with http status code constants.
Signed-off-by: David Svantesson <[email protected]>
* Fix variable scope
Signed-off-by: David Svantesson <[email protected]>
* Test one read with login and one with token
Signed-off-by: David Svantesson <[email protected]>
* Add some more tests
Signed-off-by: David Svantesson <[email protected]>
* Apply suggestions from code review
Use empty struct for efficiency
Co-Authored-By: Lauris BH <[email protected]>
* Add test case to check access for user with write access
Signed-off-by: David Svantesson <[email protected]>
* Fix access, repo admin required to change topics
Signed-off-by: David Svantesson <[email protected]>
* Correct first test to be without token
Signed-off-by: David Svantesson <[email protected]>
* Any repo reader should be able to access topics.
* No need for string pointer
Signed-off-by: David Svantesson <[email protected]>
* Add Backend Logic for Toggling Email Notification
This commit adds the backend logic for
allowing users to enable or disable email
notifications. The implementation ensures
that only issue notification emails get disabled
and important emails are still sent regardless
of the setting.
The UI to toggle this setting has not yet been
implemented.
* Add UI and complete user email notification enable
This commit completes the functionality to allow
users to disable their own email notifications.
Signed-off-by: Gary Kim <[email protected]>
* Add Third Option for Only Email on Mention
Signed-off-by: Gary Kim <[email protected]>
* Readd NOT NULL to new preference string
Signed-off-by: Gary Kim <[email protected]>
* Add Tests and Rewrite Comment
Signed-off-by: Gary Kim <[email protected]>
* Allow admin to set default email frequency
Signed-off-by: Gary Kim <[email protected]>
* Add new config option to docs
Signed-off-by: Gary Kim <[email protected]>
* Fix a few mistakes
Signed-off-by: Gary Kim <[email protected]>
* Only update required columns
Signed-off-by: Gary Kim <[email protected]>
* Simplify an error check
Signed-off-by: Gary Kim <[email protected]>
* Make email_notification_preference column in DB be VARCHAR(20)
Signed-off-by: Gary Kim <[email protected]>
* Handle errors
Signed-off-by: Gary Kim <[email protected]>
* Update models/migrations/v93.go
Co-Authored-By: Lauris BH <[email protected]>
* Add description in repository search.
Signed-off-by: David Svantesson <[email protected]>
* Refactor SearchRepositoryByName with a general function SearchRepository
Signed-off-by: David Svantesson <[email protected]>
* Allow to specify if description shall be included in API repo search.
Signed-off-by: David Svantesson <[email protected]>
* Add new app.ini setting for whether to search within repo description.
Signed-off-by: David Svantesson <[email protected]>
* Search keyword in description (if setting enabled) on:
- Explore page
- Organization profile page
- User profile page
- Admin repo page
Do not search keyword in description on:
- Any non-keyword search (not relevant)
- Incremental search (uses API)
Signed-off-by: David Svantesson <[email protected]>
* Put parameters related to keyword directly after it
Signed-off-by: David Svantesson <[email protected]>
* Add test cases for including (and not including) repository description in search.
Signed-off-by: David Svantesson <[email protected]>
* Rename test function from TestSearchRepositoryByName to TestSearchRepository.
Signed-off-by: David Svantesson <[email protected]>
* Make setting SEARCH_REPO_DESCRIPTION default to true
Signed-off-by: David Svantesson <[email protected]>
* org/members: display 2FA state
* fix comment typo
* lay down UserList bases
* add basic test for previous methods
* add comment for UserList type
* add valid two-fa account
* test new UserList methods
* optimize MembersIsPublic by side loading info on GetMembers + fix integrations tests
* respect fmt rules
* use map for data
* Optimize GetTwoFaStatus
* rewrite by using existing sub func
* Optimize IsUserOrgOwner
* remove un-used code
* tests: cover empty org + fix import order
* tests: add ErrTeamNotExist path
* tests: fix wrong expected result
Handle case where an orginization is private but a user who is not a
member of the orgninization has been added as a collaborator of a repo
within that org
Fixes#6962
* fix org visibility bug
* fix permission check
* add integration tests
* fix tests
* change test user name for easier maintainance and fix test
* fix test git repo name
* Add API for manipulating Git hooks
Signed-off-by: Segev Finer <[email protected]>
* Replace code.gitea.io/sdk with PR branch temporarily for CI
* Switch back to code.gitea.io/sdk@master
* Return 403 instead of 404 on no permission to edit hooks in API
* Add tests for Git hooks API
* Update models/repo_list_test.go
Co-Authored-By: segevfiner <[email protected]>
* Update models/repo_list_test.go
Co-Authored-By: segevfiner <[email protected]>
* empty line
* Support searching commits with prefix syntax
For now, support auther: committer:
When more than one prefix is supplied is presented, the result is the union.
When different prefixes are supplied, the result is the intersection.
For example,
"author:alice author:bob"
=> the result is all commits authored by Alice OR Bob
"hello committer:alice"
=> the result is all commits committed by Alice AND has the keyword
'hello' in the message.
Note that there should NOT have any space after the colon(:) of the prefix.
For example,
"author:bill" => correct
"author: bill" => wrong
* Remove unneeded logging
* Add missing files of test repository
* Add missing repo_unit entries to test fixtures
* Update test cases
* Add tooltip for commits search button
* Update tooltip text
I have no idea about how to format it with line breaks.
* Make the usage example more real
* Add a test case
* Add new options struct for SearchCommits
* Prefer len(s) > 0 over s != ""
* Add NewSearchCommitsOptions
* Show email if the authenticated user owns the profile page being
requested for.
Also removed `setting.UI.ShowUserEmail` as it's documentation says it
only controls the email setting on the explore page
* fix current user check... This prevents a panic as a user must be signed in before ctx.User is called
* fix panic in tests
* try to fix tests
* Update year
* Test CI fail
* Revert change
* User 3 is not allowed to authorize
* Set user2 email to be private
* Change to user4 in explore page as user2 now has private email option set
* fixes#5957
* add tests to make sure config option is respected
* use already defined struct
* - use migration to make the flag repo wide not for the entire gitea instance
Also note that the config value can still be set so as to be able to control the value for new repositories that are to be created
- fix copy/paste error in copyright header year and rearrange import
- use repo config instead of server config value to determine if a commit should close an issue
- update testsuite
* use global config only when creating a new repository
* allow repo admin toggle feature via UI
* fix typo and improve testcase
* fix fixtures
* add DEFAULT prefix to config value
* fix test
* Ensure valid git author names passed in signatures
Fix#5772 - Git author names are not allowed to include `\n` `<` or `>` and
must not be empty. Ensure that the name passed in a signature is valid.
* Account for pathologically named external users
LDAP and the like usernames are not checked in the same way that users who signup are.
Therefore just ensure that user names are also git safe and if totally pathological -
Set them to "user-$UID"
* Add Tests and adjust test users
Make our testcases a little more pathological so that we be sure that integration
tests have a chance to spot these cases.
Signed-off-by: Andrew Thornton <[email protected]>
* Added basic heatmap data
* Added extra case for sqlite
* Built basic heatmap into user profile
* Get contribution data from api & styling
* Fixed lint & added extra group by statements for all database types
* generated swagger spec
* generated swagger spec
* generated swagger spec
* fixed swagger spec
* fmt
* Added tests
* Added setting to enable/disable user heatmap
* Added locale for loading text
* Removed UseTiDB
* Updated librejs & moment.js
* Fixed import order
* Fixed heatmap in postgresql
* Update docs/content/doc/advanced/config-cheat-sheet.en-us.md
Co-Authored-By: kolaente <[email protected]>
* Added copyright header
* Fixed a bug to show the heatmap for the actual user instead of the currently logged in
* Added integration test for heatmaps
* Added a heatmap on the dashboard
* Fixed timestamp parsing
* Hide heatmap on mobile
* optimized postgresql group by query
* Improved sqlite group by statement
* Hide outdated comments in file view
Signed-off-by: Jonas Franz <[email protected]>
* Add unit test by adding "invalidated" comment to fixtures
Signed-off-by: Jonas Franz <[email protected]>
* Initial ui components for pull request review
* Add Review
Add IssueComment types
Signed-off-by: Jonas Franz <[email protected]>
(cherry picked from commit 2b4daab)
Signed-off-by: Jonas Franz <[email protected]>
* Replace ReviewComment with Content
Signed-off-by: Jonas Franz <[email protected]>
* Add load functions
Add ReviewID to findComments
Signed-off-by: Jonas Franz <[email protected]>
* Add create review comment implementation
Add migration for review
Other small changes
Signed-off-by: Jonas Franz <[email protected]>
* Simplified create and find functions for review
Signed-off-by: Jonas Franz <[email protected]>
* Moved "Pending" to first position
Signed-off-by: Jonas Franz <[email protected]>
* Add GetCurrentReview to simplify fetching current review
Signed-off-by: Jonas Franz <[email protected]>
* Preview for listing comments
Signed-off-by: Jonas Franz <[email protected]>
* Move new comment form to its own file
Signed-off-by: Jonas Franz <[email protected]>
* Implement Review form
Show Review comments on comment stream
Signed-off-by: Jonas Franz <[email protected]>
* Add support for single comments
Showing buttons in context
Signed-off-by: Jonas Franz <[email protected]>
* Add pending tag to pending review comments
Signed-off-by: Jonas Franz <[email protected]>
* Add unit tests for Review
Signed-off-by: Jonas Franz <[email protected]>
* Fetch all review ids at once
Add unit tests
Signed-off-by: Jonas Franz <[email protected]>
* gofmt
Signed-off-by: Jonas Franz <[email protected]>
* Improved comment rendering in "Files" view by adding Comments to DiffLine
Signed-off-by: Jonas Franz <[email protected]>
* Add support for invalidating comments
Signed-off-by: Jonas Franz <[email protected]>
* Switched back to code.gitea.io/git
Signed-off-by: Jonas Franz <[email protected]>
* Moved review migration from v64 to v65
Signed-off-by: Jonas Franz <[email protected]>
* Rebuild css
Signed-off-by: Jonas Franz <[email protected]>
* gofmt
Signed-off-by: Jonas Franz <[email protected]>
* Improve translations
Signed-off-by: Jonas Franz <[email protected]>
* Fix unit tests by updating fixtures and updating outdated test
Signed-off-by: Jonas Franz <[email protected]>
* Comments will be shown at the right place now
Signed-off-by: Jonas Franz <[email protected]>
* Add support for deleting CodeComments
Signed-off-by: Jonas Franz <[email protected]>
* Fix problems caused by files in subdirectories
Signed-off-by: Jonas Franz <[email protected]>
* Add support for showing code comments of reviews in conversation
Signed-off-by: Jonas Franz <[email protected]>
* Add support for "Show/Hide outdated"
Signed-off-by: Jonas Franz <[email protected]>
* Update code.gitea.io/git
Signed-off-by: Jonas Franz <[email protected]>
* Add support for new webhooks
Signed-off-by: Jonas Franz <[email protected]>
* Update comparison
Signed-off-by: Jonas Franz <[email protected]>
* Resolve conflicts
Signed-off-by: Jonas Franz <[email protected]>
* Minor UI improvements
* update code.gitea.io/git
* Fix ui bug reported by @lunny causing wrong position of add button
Add functionality to "Cancel" button
Add scale effects to add button
Hide "Cancel" button for existing comments
Signed-off-by: Jonas Franz <[email protected]>
* Prepare solving conflicts
Signed-off-by: Jonas Franz <[email protected]>
* Show add button only if no comments already exist for the line
Signed-off-by: Jonas Franz <[email protected]>
* Add missing vendor files
Signed-off-by: Jonas Franz <[email protected]>
* Check if reviewer is nil
Signed-off-by: Jonas Franz <[email protected]>
* Show forms only to users who are logged in
Signed-off-by: Jonas Franz <[email protected]>
* Revert "Show forms only to users who are logged in"
This reverts commit c083682
Signed-off-by: Jonas Franz <[email protected]>
* Save patch in comment
Render patch for code comments
Signed-off-by: Jonas Franz <[email protected]>
* Add link to comment in code
Signed-off-by: Jonas Franz <[email protected]>
* Add reply form to comment list
Show forms only to signed in users
Signed-off-by: Jonas Franz <[email protected]>
* Add 'Reply' as translatable
Add CODE_COMMENT_LINES setting
Signed-off-by: Jonas Franz <[email protected]>
* gofmt
Signed-off-by: Jonas Franz <[email protected]>
* Fix problems introduced by checking for singed in user
Signed-off-by: Jonas Franz <[email protected]>
* Add v70
Signed-off-by: Jonas Franz <[email protected]>
* Update generated stylesheet
Signed-off-by: Jonas Franz <[email protected]>
* Fix preview
Beginn with new review comment patch system
Signed-off-by: Jonas Franz <[email protected]>
* Add new algo to generate diff for line range
Remove old algo used for cutting big diffs (it was very buggy)
* Add documentation and example for CutDiffAroundLine
* Fix example of CutDiffAroundLine
* Fix some comment UI rendering bugs
* Add code comment edit mode
* Send notifications / actions to users until review gets published
Fix diff generation bug
Fix wrong hashtag
* Fix vet errors
* Send notifications also for single comments
* Fix some notification bugs, fix link
* Fix: add comment icon is only shown on code lines
* Add lint comment
* Add unit tests for git diff
* Add more error messages
* Regenerated css
Signed-off-by: Jonas Franz <[email protected]>
* fmt
Signed-off-by: Jonas Franz <[email protected]>
* Regenerated CSS with latest less version
Signed-off-by: Jonas Franz <[email protected]>
* Fix test by updating comment type to new ID
Signed-off-by: Jonas Franz <[email protected]>
* Introducing CodeComments as type for map[string]map[int64][]*Comment
Other minor code improvements
Signed-off-by: Jonas Franz <[email protected]>
* Fix data-tab issues
Signed-off-by: Jonas Franz <[email protected]>
* Remove unnecessary change
Signed-off-by: Jonas Franz <[email protected]>
* refactored checkForInvalidation
Signed-off-by: Jonas Franz <[email protected]>
* Append comments instead of setting
Signed-off-by: Jonas Franz <[email protected]>
* Use HeadRepo instead of BaseRepo
Signed-off-by: Jonas Franz <[email protected]>
* Update migration
Signed-off-by: Jonas Franz <[email protected]>
* Regenerated CSS
Signed-off-by: Jonas Franz <[email protected]>
* Add copyright
Signed-off-by: Jonas Franz <[email protected]>
* Update index.css
Signed-off-by: Jonas Franz <[email protected]>
* Add support for U2F
Signed-off-by: Jonas Franz <[email protected]>
* Add vendor library
Add missing translations
Signed-off-by: Jonas Franz <[email protected]>
* Minor improvements
Signed-off-by: Jonas Franz <[email protected]>
* Add U2F support for Firefox, Chrome (Android) by introducing a custom JS library
Add U2F error handling
Signed-off-by: Jonas Franz <[email protected]>
* Add U2F login page to OAuth
Signed-off-by: Jonas Franz <[email protected]>
* Move U2F user settings to a separate file
Signed-off-by: Jonas Franz <[email protected]>
* Add unit tests for u2f model
Renamed u2f table name
Signed-off-by: Jonas Franz <[email protected]>
* Fix problems caused by refactoring
Signed-off-by: Jonas Franz <[email protected]>
* Add U2F documentation
Signed-off-by: Jonas Franz <[email protected]>
* Remove not needed console.log-s
Signed-off-by: Jonas Franz <[email protected]>
* Add default values to app.ini.sample
Add FIDO U2F to comparison
Signed-off-by: Jonas Franz <[email protected]>
* Add LDAP service for tests
* Add LDAP login source and test user sign-in
* Add checks to test if user data is correct
* Add LDAP user sync test
* Add failed user sign-in test
* add topic models and unit tests
* fix comments
* fix comment
* add the UI to show or add topics for a repo
* show topics on repositories list
* fix test
* don't show manage topics link when no permission
* use green basic as topic label
* fix topic label color
* remove trace content
* remove debug function
* Pull request options migration and UI in settings
* Add ignore whitespace functionality
* Fix settings if pull requests are disabled
* Fix migration transaction
* Merge with Rebase functionality
* UI changes and related functionality for pull request merging button
* Implement squash functionality
* Fix rebase merging
* Fix pull request merge tests
* Add squash and rebase tests
* Fix API method to reuse default message functions
* Some refactoring and small fixes
* Remove more hardcoded values from tests
* Remove unneeded check from API method
* Fix variable name and comment typo
* Fix reset commit count after PR merge
* Add repo type option to /api/repo/search
* Add tests and fix result of collaborative filter in specific condition
* Fix/optimize search & tests
* Improve integration tests
* Fix lint errors
* Fix unit tests
* Change and improve internal implementation of repo search
* Use NonexistentID
* Make search api more general
* Change mirror and fork search behaviour
* Fix tests & typo in comment
* hide unactive on explore users and some refactors
* fix test for removed Organizations
* fix test for removed Organizations
* fix imports
* fix logic bug
* refactor the toConds
* Rename TestOrganizations to TestSearchUsers and add tests for users
* fix other tests
* fix other tests
* fix watchers tests
* fix comments and remove unused code