Commit Graph

76 Commits

Author SHA1 Message Date
Marc Bernard
36cc1f83b8
Fix namespace check for AFF (#6146)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-03-15 11:38:02 +01:00
Alexander Tsybulsky
c8636912f1
File status refactoring, part 2 (#6124)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-03-06 19:45:20 +01:00
Lars Hvam
7ff6b9684b
zcl_abapgit_object_filter_tran: move types to protected section (#6119)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-03-02 14:18:23 +01:00
Lars Hvam
b6470787ff
move validate_name() to interface (#6106) 2023-02-28 17:53:01 +01:00
Lars Hvam
35f9a05e8c
Refactor: package, add read_responsible() (#6083) 2023-02-24 15:58:25 +01:00
Lars Hvam
773f2f7749
refactor, extract git definitions to git (#6029)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-02-03 11:46:00 +01:00
Marc Bernard
24e79943f5
Update object descriptions - Part 2 (#6019) 2023-02-02 09:03:51 +01:00
Marc Bernard
b69ce81f1b
Add "ignore sub-packages" option for offline repos (#5948) 2022-12-15 12:43:55 -05:00
Marc Bernard
1b11487a2b
Repo View: Fallback to main if branch doesn't exist (#5925) 2022-12-09 15:04:16 -05:00
Christian Günter
c40406930a
add label F4 value help (#5891)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-11-30 12:29:40 -05:00
Christian Günter
23fb33c86a
New Online/Offline: Add labels form input (#5888) 2022-11-27 09:23:45 +01:00
Marc Bernard
a6ec3e0c3e
Refactor: BOM handling (#5878)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-11-22 13:14:07 -05:00
Marc Bernard
1c236e042d
Remove unnecessary exception (#5856) 2022-11-06 16:57:16 +01:00
Alexander Tsybulsky
1fe63ac80e
Local organization/grouping/labeling of repos (#5814) 2022-11-03 09:03:51 +01:00
Lars Hvam
cb66e18738
housekeeping, delete some unused variables (#5825) 2022-10-17 15:25:00 +02:00
Fabian Lupa
125b529583
Allow use of changelog feature without APACK (#5739) 2022-10-04 07:50:37 +02:00
Marc Bernard
dd58dac4c3
Fix dump when deleting repo with DB utility (#5740)
* Fix dump when deleting repo with DB utility

Ref #5612

- Avoid dump when manually deleting entries with DB Utility
- Avoid inconsistency when deleting repo entry but not repo checksums
- Improve warning popup and error message

* Fix warning

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-09-07 08:41:41 -04:00
Marc Bernard
ae8d471d4a
Check logon language during uninstall (#5731) 2022-08-29 21:59:51 -04:00
Marc Bernard
1737957b34
Fix regression in non-Unicode systems (#5732) 2022-08-26 08:19:24 +02:00
Marc Bernard
3e4c684815
Rename repo interface method implementations (#5667)
Renames methods after changing to interface. Interface methods are now properly named `<interface>~<method>` (instead of `<alias>`). This also fixes warnings and navigation issues in `SE24/SE80`.
2022-06-28 09:24:47 +02:00
Marc Bernard
8555d1a0da
Remove aliases - Repo services (#5640) 2022-06-23 14:49:06 +02:00
Marc Bernard
787bc605b0
Propagate codepage conversion errors (#5638) 2022-06-23 07:12:25 +02:00
Christian Günter
f386846858
New Offline: Auto create package if non-existing (#5634)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-06-21 12:44:51 +02:00
Fabian Lupa
1052ce6e85
Support direct longtexts in exceptions (#5592)
* Support direct longtexts in exceptions

as opposed to already supported indirect T100-based longtexts

* Lint

* Remove direct longtext variable support

* Add unit tests for exception longtext

* Add longtext message to language mismatch error

* Fix missing preserve_newline handling

* Adjust longtext display in error message box

- Convert newlines to html line breaks
- Indicate if a longtext is available on hover

* Fix duplicate preserve newline handling

* Adjust exception longtext rendering

Render linebreaks as html paragraphs

* Align error message box buttons to bottom right

so they do not move on hover when a longtext is available

* Refactor exception unit tests

* Skip failing transpiled tests

* Adjust longtext indicator for error message

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-05 18:40:34 +02:00
Marc Bernard
7258fdc315
Repo view: Show icon for different source system (#5514)
In case an objects originates from a different system (`<> sy-sysid`), an icon will be shown after the object. On hover, you can see the id of the original system. 

Closes https://github.com/abapGit/abapGit/issues/3865
2022-05-21 08:13:41 +02:00
Marc Bernard
297708b054
Repo view: fix "order by transport" dump (#5571)
* Repo view: fix "order by transport"

Partly regression of #5323

Closes #5570

* Add flag

* Improve sort
2022-05-18 21:25:43 +02:00
Christian Günter
722a954c43
Improve error message for language mismatch (#5544)
* Improve error message for language mismatch

* refactor

* refactor

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-17 13:31:25 +02:00
Fabian Lupa
872339dfe8
Refactor remote settings (#5483)
* Add get_switched_origin to repo_online

* Add onclick action for radiobuttons

* Refactor remote settings to allow for direct input

without using value helps

* Adjust branch overview error message

Inform the user about the possibility of changing HEAD directly without using the value help (that failed to show up).

* Fix hidden form fields taking up vertical space

* Add min/max restriction to commit field

on remote settings page

* Implement basic validation for commit id

on remote settings page

* Load previous branch/tag when PR is selected

in remote settings page to be able to switch back to it more easily

* Use current form data in PR and tag selection

on remote settings page, where possible. Otherwise check the form values are the same as the repo instance values.

* Fix issue when changing URL and switching from PR

at the same time

* Remove repo dependency in PR enumerator

to be able to list PRs for the current url on the repo remote settings page

* Update zcl_abapgit_branch_overview.clas.abap

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-05-02 13:22:23 +02:00
Marc Bernard
dd85924244
Properly ignore files during deserialize (#5427)
* Properly ignore files during deserialize

Closes #5426

This moves the ignore logic from `zcl_abapgit_files_status->prepare_remote` to an option of `zcl_abapgit_repo->get_files_remote`. Deserialize can then ignore the files already when getting them via `get_files_remote`.

PS: Required for https://github.com/exercism/abap/pull/82

* Update zcl_abapgit_repo.clas.abap

* Update zcl_abapgit_repo.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2022-04-26 16:52:19 +02:00
Alexander Tsybulsky
2cc3f53fc5
Rework checksums (#5328) 2022-04-13 11:29:23 +02:00
buca92
4d503876a2
Several methods moved from zcl_abapgit_repo to zif_abapgit_repo (#5466) 2022-04-11 13:36:38 +02:00
Marc Bernard
9d9b4327ad
Avoid logon when comparing with remote (#5458)
"Data Config" is persisted on remote side only. Comparison feature reads the local part only and therefore does not support comparing of "data config". Therefore `get_files_remote` is not necessary.

Closes #5189, #5443

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-08 17:00:54 +02:00
Marc Bernard
30371b9a8f
Check if package name is allowed (#5416)
* Check if package name is allowed

When validating SAP packages, it now checks the naming conventions.

* Move method

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-03-31 14:57:48 +02:00
Marc Bernard
f712eb17a5
Folder logic "mixed" (#5413)
* Folder logic "mixed"

Introduces a new folder logic named `mixed` which combines `prefix` and `full`. The root package name will be used as prefix for all sub-packages but the package names are *not* concatenated recursively. This will allow for using significantly logic package names.

Also includes several new unit tests especially for nested packages which had not been tested before.

Closes #5410

Todo: Update docs

* Add constant

* Add options to UI

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-03-31 13:35:34 +02:00
Alexander Tsybulsky
91cd4c3653
Separate zif_abapgit_repo (#5329)
* zif_repo basis

* all but zcl_abapgit_repo_srv

* fix zcl_abapgit_repo_srv

* remove create_new_log from interface

* "hack" -> "TODO"

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-02-19 09:22:46 +01:00
Marc Bernard
5086b7226d
Add refresh after pull errors (#5312)
* Add refresh after pull errors

Follow-up #5303

* Indent
2022-02-01 16:41:58 +01:00
Marc Bernard
e3fc3e57d6
Branch is optional when creating online repo (#5299) 2022-01-30 14:11:49 -05:00
Frank Müller
c932426b44
Pre Filter Backend and GUI Logic (#5227)
* Initial

* Adjustments

* Router

* Abaplint

* abaplint

* diff between eclipse and vscode

* Multiple Adjustments

* Split Backend And GUI Logic

* Multiple Adjustments

* No Unit Tests

* abaplint

* Rename ZCL_ABAPGIT_REPO_PRE_FILTER to ...TR

* Multiple Adjustments

* Refactor the OVP action links into a toolbar

* abaplint

* Replace BAPI_MSG by STRING

* Rename Pre Filter to Object Filter

* Rename Pre Filter also in abap_transpile.json

* restore from main

* Check if <ls_item>-li_class is filled in Toolbar

* Adj. toolbars and move TR Req to zif_abapgit_popup

* abaplint

* Move  ty_trrngtrkor_tt to zif_abapgit_definitions

* abaplint

* Move and rename filter menu entries

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: IBM <mbox-060-sap-extern-tbom@daimler.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-01-25 10:00:09 +01:00
Alexander Tsybulsky
cb90be9ce7
Fix lost remote on favorite refresh (#5277)
* Fix reinstantiation on fav_refresh

* rename list_favorites to list_by_keys

* linter fix
2022-01-20 12:05:54 +01:00
Lars Hvam
1387128719
unit testing updates (#5246)
* unit testing updates

* fix

* split unit test method, ZCL_ABAPGIT_HTML_FORM_UTIL

* run is_empty

* type changes

* update notes

* update

* upd

* update notes

* run check_author_regex

* run parse_commits

* update notes

* add notes

* update

* run extract_author_data1

* run extract_author_data2

* run extract_author_data9

* update notes
2022-01-06 08:14:43 +01:00
Frank Müller
b67c06dc2d
Pre Filter Backend Logic (#5226)
* Repo, Repo Online, File Status

* Stage Logic

* Adjustments

* abaplint

* abaplint

* abaplint

* diff between eclipse and vscode

* Centralisation and reuse

* Filter at Get Remote Files instead of Set

* Split Backend And GUI Logic

* abaplint

* abaplint

* Filter Unit Tests

* Missing ,

* remove own type for trobj_name

* Multiple Adjustments

* Rename ZCL_ABAPGIT_REPO_PRE_FILTER to ..._TR

* abaplint

* Replace BAPI_MSG by STRING

* Rename Pre Filter to Object Filter

* Rename Pre Filter also in abap_transpile.json

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-04 07:35:57 +01:00
Marc Bernard
c7e4af3be2
Add user exit for serialize postprocessing (#5194)
There are scenarios where you want to serialize objects differently than abapGit. This exit is called at the end of the serialize process and gives an opportunity to change the content of the serialzed files.

One such scenario would be to automatically pretty-print code. This can be achieved by looping over all `.abap` files and processing them accordingly in this exit.

Closes #5050

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-11 07:30:50 +01:00
Marc Bernard
b46c8b4599
Refactor: Consolidate front-end classes (#5172)
* Refactor: Consolidate front-end classes

There's no need for two "front-end classes". Moves all of ZCL_ABAPGIT_GUI_FUNCTIONS to ZCL_ABAPGIT_FRONTEND_SERVICES. Now all front-end calls are nicely together.

No functional change, some method reordering. 

Ref #2510, #5145

* Add missing interface

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-09 06:49:43 +01:00
Christian Günter
500d7eeb9f
hotkeys for form actions (#5133) 2021-11-14 14:55:38 +01:00
Christian Günter
53343a98d6
Files: Introduce secondary keys (#5101)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-05 05:32:39 +01:00
Marc Bernard
45806c5a95
Refactor serializer class (#4994)
* Refactor serializer class

- Consolidate i18n parameters
- Move determination of translation languages into serializer class
- Pass translation language setting when parallel processing (was a bug)

* Lint

* Add unit tests

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-25 16:01:40 +02:00
Alexander Tsybulsky
65701dbcc8
pull on package reassign (#4999)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-13 06:12:19 +02:00
Lars Hvam
93d14fcc81
repo content list: keep last changed_by in memory (#5019)
#5016
2021-10-06 15:36:51 +02:00
Frederik Hudák
00934cfdaf
Only show favorites on startup (#4997)
* Only load favorites on startup

* downport

* Escape sql

* Fix select, refactoring

* Fix parameter name

* Refactoring

* Update src/repo/zcl_abapgit_repo_srv.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update src/repo/zcl_abapgit_repo_srv.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update src/repo/zcl_abapgit_repo_srv.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* indent

* remove me

* Add type column to select

* lint

* Add info message at the bottom of the list

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-06 08:04:09 +02:00
Marc Bernard
b331de6bc7
Naming of class constants (#4945)
* Naming of class constants

This is in preparation of enforcing a naming convention for constants in classes/interfaces. At the end, the following lint rule shall be set:

```json
    "class_attribute_names": {
      "constants": "^C_.+$",
...
    },
```

After this, the only remaining constants not following this rule are in `zcl_abapgit_version`.

* Update zif_abapgit_dot_abapgit.intf.abap

* Update zcl_abapgit_gui_chunk_lib.clas.abap

* Update zcl_abapgit_gui_router.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-14 16:47:48 +02:00