Commit Graph

4934 Commits

Author SHA1 Message Date
Albert Mink
c83060f366
CHKO object calling AFF Framework (#5163) 2022-01-18 10:23:10 +01:00
github-actions[bot]
719f67b29a
[create-pull-request] automated change (#5270)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-01-18 09:20:04 +01:00
Christian Günter
a416de1cf9
Enable clickable icons for link lints (#5271)
* Enable icon for link lints

* Enable clickable icons for link lints
2022-01-17 12:10:00 +01:00
Marc Bernard
1a31eb3f2f
Correct task name parallel processing (#5269)
When serializing objects in parallel threads, it can happen that there are not sufficient system resources available (free dialog processes). In this case, abapGit can run into error "RFC task <task name> already open". This is caused by reusing the same task name in subsequent tries to serialize an object.

The correction appends a sequential number to the previous task name so each try will result in a unique task name.

Closes #5224.

PS: This does not fix any resource issues but should prevent the error. It will lead to wait situations and longer processing, however.
2022-01-14 11:47:47 +01:00
Lars Hvam
d7db1e3079
add unit test xslt_before_prog (#5268)
ref #5262
2022-01-13 09:32:39 +01:00
Marc Bernard
53bd8c3fe5
Don't include XML when serializing AFF (#5254)
* Don't include XML when serializing AFF

Avoids output of metadata XML when serialized object contains JSON (ABAP file format).

Preparation for #5126

PS: Contains new and updated unit tests

* Rename is_json_metadata

* CP

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-12 16:54:33 +01:00
Marc Bernard
269c7cb1e6
Adjust diff algorithm (#5251)
* Adjust diff algorithm

This implements a workaround for the kernel issue when determining diffs (see https://github.com/abapGit/abapGit/issues/4395 for background). 

Here's an example of the change.

Before:

After:

* Lint + check

* Add test

* Ignore new tests

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-11 07:22:46 +01:00
Christian Günter
e74076c0bb
Repo View: 'Order by path' considers object name (#5261)
+ sort files

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-01-10 21:16:32 +01:00
Fabian Lupa
be8a0062f8
Use transport parameter in ENHO+SFPF (#5258)
* objects: use provided Transport in deserialization of ENHO+SFPF

I have been working on RFC enabled functions modules for executing
abapGit operations and I found out that transported objects of type ENHO
and SFPF cannot be pulled over my RFC methods because the specified
transport was not used.

This commit simply takes over the approach from other objects where
we already read the transport number.

For SFPF, I had to add "darkmode" which was missing and which is
necessary to avoid any dialogues.

I am not sure if there are other objects with the same problem, so
I might be posting similar patches in future.

* Downport #5199

* Fix indentation

* Always pass transport in SFPF

Co-authored-by: Jakub Filak <jakub.filak@sap.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-01-10 10:21:34 +01:00
Marc Bernard
074ae5a69b
Refactor: Calling batch input (#5252)
* Refactor: Calling batch input

Standardizes calling batch input API and handling errors.

* Fix indent

* Add new window

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-10 09:27:17 +01:00
Lars Hvam
a655480d77
unit testing updates (#5249)
* unit testing updates

* run to_abap

* update notes

* update notes

* latest

* update notes

* update to latest

* update

* run get_timestamp
2022-01-10 09:19:53 +01:00
github-actions[bot]
71dd50a1eb
ajson, Automatic Update (#5260)
* [create-pull-request] automated change

* Update zcl_abapgit_ajson_utilities.clas.abap

* Update zcl_abapgit_ajson_utilities.clas.abap

* disable json_diff_arrays

Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-10 09:07:53 +01:00
Fabian Lupa
a586e5c9ed
Save additional repo view settings (#5257)
* Save additional repo view settings

* Fix formatting
2022-01-10 07:29:11 +01:00
Fabian Lupa
79961a1f20
Support GitHub dark mode in readme icon (#5255) 2022-01-08 07:58:39 +01:00
Lars Hvam
c3b9980486
replace XUBNAME with SYUNAME (#5248) 2022-01-06 08:18:45 +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
Frederik Hudák
faab3bb0b0
TOBJ - fix xslt serialization dump (#5247) 2022-01-04 17:06:54 +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
Lars Hvam
7a9ba93337
1.114.0 (#5245)
* 1.114.0

* v1.114.0
2022-01-03 10:59:39 +01:00
Lars Hvam
fd401956b8
Refactoring: Prioritization/sequence of deserialization (#5198) 2022-01-03 10:55:06 +01:00
Marc Bernard
2eaaff7ad9
Adjust usage of transport in object classes (#5218)
After #5216

Replaces `zcl_abapgit_default_transport=>get_instance( )->get( )` logic with `iv_transport` for the following object types:
`AMSD, BDEF, DRUL, DTDC, FDT0, FUGR, INTF, PROG, SQSC, SRVB, SRVD, WDCA`

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-03 10:50:53 +01:00
Lars Hvam
2791d54c0b
update npm packages to latest (#5239) 2022-01-03 10:18:44 +01:00
github-actions[bot]
22a455e10c
ajson, Automatic Update (#5237) 2021-12-27 17:37:29 +01:00
Marc Bernard
b2f62e91d5
Repo View: Improve view with folders (#5215)
* Repo View: Improve view with folders 

I made some improvements to the folder view:
- Boxed display of path
- Separate links for folders within path
- Remove leading/trailing `/` in folder display
- Better alignment of `..` parent folder 
- Fix incorrect HTML since `%26lt;tr%26gt;` was before `%26lt;thead%26gt;`

Ref https://github.com/abapGit/abapGit/pull/5159#issuecomment-976124592

* Update CSS

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-12-22 10:31:44 -05:00
Marc Bernard
35f18c57d9
Pass transport to object classes (#5216)
Adds transport number for `zif_abapgit_object~deserialize` and `zif_abapgit_object~delete` to pass the transport number to the object classes.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-20 18:47:10 +01:00
Marc Bernard
089e04d7e4
W3xx: Avoid diffs of parameters (#5231)
It's possible that systems return parameters unsorted causing diffs. Sorting the parameters will avoid this.
2021-12-19 14:43:23 -05:00
NicoleG
c23357f22f
AIFC - Enablement of AIFC development object for AIF content in abapgit (#5197) 2021-12-18 14:51:21 +01:00
Lars Hvam
be72af74e8
rm docs folder (#5222) 2021-12-17 08:27:00 +01:00
Lars Hvam
c0252083ff
abaplint config: no use of cl_aunit_assert (#5225) 2021-12-17 08:24:39 +01:00
Jaime Rodriguez Capote
8175825041
Requirements dependency check (#5223)
* Check req. when release/patch length is different

* Tests for requirement check

* abaplint checks

* Check for pach value longer than 4 characters
2021-12-16 12:00:14 -05:00
Lars Hvam
7d5d1cabca
file status, bugfix (#5220)
closes #5219
2021-12-14 11:56:26 -05:00
Fabian Lupa
dc51247e9b
Always use active version for DOCU CL (#5201)
* Always use active version for DOCU CL

* CLAS/INTF delete documentation on pull

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-14 06:36:00 +01:00
Marc Bernard
5bcdbce3b8
DDLX/SMTG: Raise exception (#5217)
Change to `raise_with_text`
2021-12-14 03:54:13 +01:00
Marc Bernard
4f1a4a2b01
Commit page: Add description to links (#5214)
Add some text to clarify links between "Summary" and "Detail" 
https://github.com/abapGit/abapGit/pull/5087#issuecomment-991951078
2021-12-13 15:31:03 -05:00
Marc Bernard
9d5018e39e
Fix code inspection output (#5211)
Fix typo in comparison of object and sub-object
2021-12-13 15:16:07 -05:00
Christian Günter
fe363f7b0a
Downport clipboard_export (#5206)
* Downport clipboard_export

* add transpile filter

* undo
2021-12-13 08:02:19 +01:00
Christian Günter
af48aec066
Repo view: Fix path and filenames (#5205)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-13 07:49:23 +01:00
github-actions[bot]
9f23c37b6f
ajson, Automatic Update (#5203)
* [create-pull-request] automated change

* Update zif_abapgit_ajson.intf.abap

* Update zif_abapgit_ajson.intf.abap

Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-13 07:46:08 +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
Lars Hvam
97d8723b6f
prioritize_deser, add unit tests (#5193)
* prioritize_deser, add unit tests

* more tests

* change to string

* update to latest npm packages, and more unit test
2021-12-10 13:46:32 -05:00
Christian Günter
53a314d946
Command palette: auto close if other palette opens (#5192) 2021-12-09 14:38:10 +01:00
manhofmann
a637caf864
performance optimization parallel mode (#5187)
* performance optimization parallel mode

in parallel mode a new session is created for each object to be serialized. method IS_TYPE_SUPPORTED is called in each new session with only one object type. however all objects are loaded via method SUPPORTED_LIST. this change implements a specific cache for method IS_TYPE_SUPPORTED.

* Update src/objects/zcl_abapgit_objects.clas.abap

Co-authored-by: Christian Günter <christianguenter@googlemail.com>

* moved type defintion to PRIVATE SECTION

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-12-09 06:58:58 +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
Marc Bernard
9e629475dc
Fix dump ASSERTION_FAILED (#5190)
"Exists check" might be called for objects without `TADIR` entry (like `NSPC`). 

Regression of #4952 which removed the "if"

a72d3314cb (diff-4a3135e0f538157951fefdea06986dc644f6005a2af7f6917ff7f7f2f771f622L299)
2021-12-08 20:50:37 -05:00
Marc Bernard
1bed7ae318
Repo view: Set minimum width of status column (#5180)
* Repo view: Set minimum width of status column

As seen in https://github.com/abapGit/abapGit/issues/5178, if the repo view table is very wide, the status column might not wide enough and be wrapped. 

Change ensures a minimum width of the column.

* Reduce

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-08 11:57:25 -05:00
Marc Bernard
97821c8428
Add user exit for adjusting display of filenames (#5185)
The filenames can become very long, for example, usage of many sub-packages, namespaces, objects like function groups, or BSP/Fiori apps with many sub-objects, or a long paths as starting folder. This can make the repository view very busy or render the output as a very wide table (see #5169, #5178).

This exit allows to adjust the filename according to your own rules. 

Here's an example for shortening the display of files for sub-objects:

```abap
  METHOD zif_abapgit_exit~adjust_display_filename.

    DATA:
      lv_path TYPE string,
      lv_name TYPE string,
      lv_ext1 TYPE string,
      lv_ext2 TYPE string.

    SPLIT iv_filename AT '.' INTO lv_path lv_name lv_ext1 lv_ext2.

    IF lv_ext2 IS INITIAL.
      " Main object
      rv_filename = iv_filename.
    ELSE.
      " Sub object
      rv_filename = |…{ lv_ext1 }.{ lv_ext2 }|.
    ENDIF.

  ENDMETHOD.
```
2021-12-08 08:07:45 +01:00
Christian Günter
451ab7cadf
WebGUI: Disable jump (#5184)
Co-authored-by: Christian Günter <christian.guenter@emineo.ch>
2021-12-06 16:13:24 -05:00
Christian Günter
ad5bad77cb
Webgui: fix path + file encoding issue (#5182)
Co-authored-by: Christian Günter <christian.guenter@emineo.ch>
2021-12-06 15:34:30 -05:00
Marc Bernard
b5af548ed8
Fix "Remove" button for data tables (#5177)
The remove button was not working because it was defined as a second `main` button.
2021-12-03 22:02:46 -05:00
Christian Günter
94e6bdc20b
Patch: Fix link hints (#5176) 2021-12-03 09:10:04 -05:00