93 Commits

Author SHA1 Message Date
OpenProject Actions CI ca54954220 Merge branch 'release/17.3' into dev 2026-04-23 04:33:10 +00:00
Oliver Günther 7135dfc2c4 Add additional validations for path validation for posix on repositories 2026-04-22 11:23:37 +02:00
Oliver Günther a92edf17a6 Merge remote-tracking branch 'origin/release/17.3' into dev 2026-04-21 11:00:11 +02:00
Oliver Günther 61266cd96b Validate use of existing managed repository paths
https://community.openproject.org/work_packages/74165
2026-04-21 10:59:52 +02:00
OpenProject Actions CI 0c68614c6e Merge branch 'release/17.3' into dev 2026-04-17 04:32:30 +00:00
Oliver Günther 96397d7388 Explicit path validation on svn targets
https://community.openproject.org/work_packages/73978
2026-04-16 15:51:52 +02:00
Jan Sandbrink f9d8bc6614 Introduce SubclassResponsibility error
This error is intended for cases when a method is
intentionally not implemented, because the module/class defining
it expects a subclass (or class including the module) to implement
the method.

This is intended to distinguish it from other cases, such as:
* feature not implemented yet
* edge case of a method call not yet supported

Notably it avoids the misuse of the Ruby-defined NotImplementedError,
which is only intended for much more specific scenarios:

> Raised when a feature is not implemented on the current platform. For example, methods depending on the fsync or fork system calls may raise this exception [...]

Also see https://docs.ruby-lang.org/en/master/NotImplementedError.html
2026-03-27 08:14:56 +01:00
Klaus Zanders ec8f5f1265 Prevent escaping the checkout root path for repositories 2026-03-13 13:19:10 +01:00
Oliver Günther 2d1d369b83 Improve rev parsing in git adapter (#21825)
* Consistently parse git rev

* Validate commmit hex

* Resolve commit in annotate

* Resolve commit in cat

* Resolve commit in build_revision_args

* Add end-of-options

* Lint

* add path validation to scm_encode
2026-02-02 10:16:02 +01:00
Oliver Günther 50639e1c74 Use git rev-parse to find commits from input revs (#22)
https://community.openproject.org/work_packages/70988
2026-01-26 11:38:03 +01:00
Jan Sandbrink 82fc4fcb13 Fix remaining unit test failures due to frozen string literals
This should fix the last known unit test failures occuring due to the usage of
frozen string literal comments. Those were tested in a separate
commit. Broadly enabling frozen string literals will happen in multiple
separate commits after this one and only after feature tests have been fixed
as well.
2025-04-04 17:09:48 +02:00
Jan Sandbrink 466e469732 Make Git SCM interactions frozen string compatible
Replaced `<<` with `+=`, so that strings are not changed
in-place anymore.
2025-03-18 10:11:21 +01:00
Alexander Brandon Coles 1d707895c6 Grammar fixes in code, docs: possessive its/it's
- **it's** is a contraction of _it is_ or _it has_. It requires an
apostrophe.
- **its** is the posssive form of _it_, denoting ownership. It should
not use an apostrophe.
2025-02-12 06:36:46 -03:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
ulferts 3b2121f733 Revert "Merge remote-tracking branch 'origin/release/13.4' into dev"
This reverts commit 40b2bbeb09, reversing
changes made to b4c6cb17cc.
2024-03-21 11:31:17 +01:00
Ivan Kuchin 7787e457a3 Revert "Merge branch 'dev' into release/13.4"
This reverts commit a901541269, reversing
changes made to e573ca00b7.
2024-03-20 20:19:08 +01:00
Ivan Kuchin 9e4934cd0a change quotes using rubocop --only Style/StringLiterals,Style/QuotedSymbols -a 2024-03-20 18:05:22 +01:00
Christophe Bliard 8fa8584538 Run rubocop --autocorrect on all files
Only the safe cops have run. rubocop version is 1.59.0.
2024-01-05 15:27:09 +01:00
Christophe Bliard c795874f7f Update copyright year for 2024
command used: `rg -l 'Copyright \(C\) 2012-202\d the OpenProject' | xargs -n 100 sed -i -r 's/Copyright \(C\) 2012-202. the OpenProject/Copyright (C) 2012-2024 the OpenProject/'`
2024-01-02 16:23:54 +01:00
Klaus Zanders da93dcca67 Fixes Performance/StartWith offenses 2023-09-06 13:07:07 +02:00
Klaus Zanders 26cee2729e Fixes Performance/RegexpMatch offenses 2023-09-06 12:50:32 +02:00
Klaus Zanders 0ff0e80295 Fixes Performance/StringIdentifierArgument offenses 2023-09-06 10:59:37 +02:00
Klaus Zanders 58a4775f19 Fixes Performance/CompareWithBlock offenses 2023-09-06 10:59:37 +02:00
Pavel Balashou 3f6b0e4ee1 Make event block safe in case payload is missing. 2023-08-02 18:04:39 +02:00
Christophe Bliard 9e865b4f7b lint: Run rubocop safe autocorrect
Command is `rubocop --safe --autocorrect app lib lib_static modules spec`
2023-03-09 10:25:57 +01:00
Christophe Bliard 21a696ef9b Update copyright information for 2023 2022-12-30 15:51:26 +01:00
Christophe Bliard f3625b62e2 Ensure git commands output the full commit sha
That ensures the regex to get the commit sha still works if git config
has `log.abbrevcommit=true`.
2022-10-06 10:40:03 +02:00
r3flow dc9fe77e98 fix #43295 2022-08-10 09:31:04 +02:00
Christophe Bliard 48a4f1b6ad lint with rubocop --autocorrect (safe cops only) 2022-06-02 10:40:10 +02:00
Christophe Bliard a33524ef6d remove ruby magic comment for utf-8
ruby interprets source encoding as utf-8 since 2.0.0, making magic comment redundant and useless
2022-03-10 19:36:58 +01:00
Christophe Bliard bc8d423ec2 update copyright information for 2022 2022-03-01 17:05:59 +01:00
ulferts 89cfee203f remove usage of require_dependency
according to the rails 6 migration guide, it should no longer be necessary: https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#require-dependency
2022-01-07 14:46:21 +01:00
Oliver Günther ccfa29c728 Move license and copyright docs to root, fix names and references 2021-09-02 21:50:46 +02:00
luzpaz 2ae53bd252 Fix typos in user facing and non-user facing code (#9497)
* Fix typos in user facing and non-user facing code

Found via `codespell -q 3 -S ./config/locales -L ba,nd,parms,sur,varius`

* Fix strings in specs
2021-07-21 17:26:31 +02:00
ulferts 1bdd2ab9ae safe automatic fixes by rubocop (#8994) 2021-02-11 16:02:18 +01:00
ulferts 6140f4c7e9 update copyright to 2021 (#8925)
Updates the copyright to 2021 for all files that have a copyright. Files in our source code without the copyright header still do not receive one automatically. Additionally, backlisted files are also excluded.

Previously the copyright of chiliproject which references redmine stated a copyright of redmine up to and including 2017 which is not true for the code we have in here. Because of that I changed that to 2013
2021-01-13 17:47:45 +01:00
ulferts 6af7401704 fix ruby 2.7 deprecations (#8866) 2020-12-03 22:32:48 +01:00
ulferts 9e2287bfcc rename and inflect according to zeitwerk 2020-02-21 20:47:24 +01:00
Henriette Dinger bd7f4e4814 Update copyright notice 2020-01-15 11:31:26 +01:00
Oliver Günther a7ed2e9da0 Rewrite jobs to use ActiveJob syntax 2019-10-25 09:09:45 +02:00
ulferts a93ecca5a8 Feature/members api show (#7308)
* basic members collection response

* complete member index end point

* document versions#index

* remove user association from members

There is already a more generic principals association. Having both causes confusion and leads to duplicate loading of models

* linting

* remove disabled test

* add members#show api end point

* add project and principal to member representer

* replace member.user reference with principal

* use principal reference in project members association

* modernize roles api

* complete member representer rendering

* replace remnants of user association

* add member schema api endpoint

* have dedicated available projects end point for versions

* linting

* limit roles to assignable ones in schema

* rename member to membership in api

* remove remnants of user in member

* spec fixes

* use available_projects endpoint in versions board

* add eager loading to memberships#index

* members create form api endpoint

* ensure role exists for default assignment

* extract switch for users/groups to work_packages representer

* document membership create form

* add l10n expected in specs

* strengthen the usage of a delete base service

* use base class for set attributes service

* fix alias in service

* add create endpoint to members api

* document members create endpoint

* linting

* adapt to altered service signature

* use default endpoint for wp#get

* use CF infused representer


[ci skip]
2019-05-29 09:31:56 +03:00
Markus Kahl e57d9d04ba determine start revision when fetching changeset to support subfolders 2019-02-18 15:25:37 +01:00
Oliver Günther c1ccc51298 Fix manager spec
[ci skip]
2019-01-25 13:20:44 +01:00
Oliver Günther 8898ed9b9b Remove scm initializer 2019-01-16 15:46:49 +01:00
Nicolas Salguero 89ef70547b Corrections for: - https://community.openproject.com/projects/openproject/work_packages/26599/activity - https://community.openproject.com/projects/openproject/work_packages/26614/activity - https://community.openproject.com/projects/openproject/work_packages/27283/activity 2019-01-16 14:59:54 +01:00
Oliver Günther 9b5d652102 [28471] Fix encoding and splitting of repo paths
https://community.openproject.com/wp/28471
2018-09-12 10:37:23 +02:00
Oliver Günther f2ceec1c78 Set DJ priorities and lower max attempts 2018-09-03 15:58:16 +02:00
Wieland Lindenthal 8d7332b2da cleanup i18n 2018-02-12 16:22:03 +01:00
Oliver Günther 6ef4211e77 Bump copyright to 2018 (#6171)
[ci skip]
2018-02-12 08:51:12 +01:00
Oliver Günther 59d825fd61 [26401] Use peg revision to access now removed files and folders (#6034)
https://community.openproject.com/wp/26401

[ci skip]
2017-12-04 08:28:37 +01:00