1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-22 06:02:11 +02:00
Commit graph

143 commits

Author SHA1 Message Date
Jonah Graham
a1c02e2cce [releng] Apply auto-clean of save to all files with Eclipse 4.23
This mostly is using diamond operator, but includes
adding missing @Override and organizing imports and
applying formatting improvements in the JDT formatter.

Change-Id: Id91cbff33b0a039cc5121945ffbc407ecba45866
2022-04-19 20:13:15 -04:00
Jonah Graham
148ae40d0f [releng] Make CDT Clean-up profile match Editor on save actions
The CDT Cleanup profile had a bunch of extra cleanups applied to it, this
prevents running the CDT cleanup profile manually to simulate running the
save actions on all Java files

Change-Id: Iad491e1258a4ba90d81d1457ea0f6779e3663e38
2022-04-19 20:13:15 -04:00
Jonah Graham
7400e22b1f [releng] Update all legal files with update_legal_files.sh
The about.html was changed as per
https://gitlab.eclipse.org/eclipsefdn/it/websites/eclipse.org/-/issues/90

Change-Id: Ied879279460a8fc610630fc26794ab3df9eae39f
2022-04-13 13:42:35 -04:00
Jonah Graham
1f0451c163 [releng] Prepare for 10.7.0 with version bumps
All the about.html files are updated, so every bundle that hasn't
already had a bump in 10.7 needs one now

Change-Id: I6143d2fbe77a58a3a6d2f4a226d96087117f9ac1
2022-04-13 13:15:06 -04:00
Jonah Graham
04296f1594 [releng] In terminal only profile consume o.e.remote locally
This change should have been done when o.e.remote was added to
CDT but was overlooked until the target platform was updated
to remote old o.e.remote from it.

Change-Id: Ia4238b5b85b42aa32adeeaad23b6f135919652fe
2022-04-12 08:05:46 -04:00
Jonah Graham
bc8c94fbe6 [releng] Update to Tycho 2.7.1
2.7.1 is required to consume PGP keys successfully.

Change-Id: I2ca86728b9118943fcd364656861dc8e7170145a
2022-04-11 17:07:30 -04:00
Jonah Graham
e8d924bb9a [releng] Bump versions for 10.7.0
Change-Id: Ibada1ef26f47f4238ae64f53fb67a73125534347
2022-04-10 20:55:36 -04:00
Jonah Graham
45237eed0b Dispose font in TerminalColorsFieldEditor
TerminalColorsFieldEditor had a dispose method, but
FieldEditorPreferencePage does not call dispose on the
individual field editors despite API implication that
it should.

Change-Id: I98c2987446d8b005cbca571763a9e811e966e0d3
2022-02-25 11:26:49 -05:00
Jonah Graham
640dc53892 [releng] Bump version numbers for all modified projects
Change-Id: I0d78c550512d8e63374bf1bc3a53f80e5d387e31
2022-01-12 18:57:12 -05:00
Jonah Graham
431e5ffd23 [releng] Bump end year on copyright on all modified features
Change-Id: I0d35eb6514d87fb6dcba0a284f58963b80861d51
2022-01-12 18:57:12 -05:00
Jonah Graham
dbd7558f17 [releng] Bump to CDT version 10.6.0
Change-Id: I28629cdfb0906ce7f1b33a88cbbd55521afc8f6b
2022-01-12 14:07:45 -05:00
Jonah Graham
b0cb9b10d7 [releng] Update to newer Tycho
Newer Tycho has a new feature that adds an extra header (Bundle-License)
to every plug-in. This commit includes omitting this new feature
rather than bumping every single version of every bundle in CDT.

See https://www.eclipse.org/tycho/sitedocs/tycho-packaging-plugin/package-plugin-mojo.html#deriveHeaderFromProject

Bundles have version bumps due to newer Tycho including newer
JDT compiler which leads to classfile differences.

Change-Id: Id536d75a92a30582418324e27d74008869f7dd3a
2021-10-13 21:33:14 -04:00
Jonah Graham
3180471732 Bug 576447: Add missing schema entry to various plug-ins' build.properties
Change-Id: I933b1a2c4cfc32786412fd0c31bb9e2c39bc836b
2021-10-05 11:57:25 -04:00
Jonah Graham
ad4d444823 [releng] Prepare for CDT 10.5.0
Change-Id: I9b72edf4a0ff0771a147934dd7f1c92ba1ee799a
2021-09-26 20:23:17 -04:00
Jonah Graham
0cd0aa1270 Bug 575159: Consider return code of wsl.exe
If the return code is non-zero wsl may have failed in someway, with
recent changes in Windows, wsl.exe is present even when wsl is not
installed. In that case wsl.exe is a dummy that can be used to install
wsl.

Change-Id: I83af60623084e1364d16c3a1739bc4f6a25ac3a9
2021-08-24 12:39:15 -04:00
Torbjörn Svensson
eb7aa70a9f Only spawn WSL detct job on Windows
There is no need to spawn the WSL detect job for other platforms than
Windows.

Contributed by STMicroelectronics

Change-Id: I85256a9f6a4f5e9e9276458ba67e2f6adf02afa7
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-08-15 15:44:23 +02:00
Torbjörn Svensson
432ca56fd3 Only fetch result for jobs that has started
In certain scenarios, the WSL detect job is not launched directly. As
the join() method returns early for suspended jobs, the result list is
read too early and causing NPE.
This was deteced while running the JUnit tests.

Contributed by STMicroelectronics

Change-Id: I8a013cf83be26e8f8bee38fd2e7a4557eb1a57ab
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-08-15 15:31:26 +02:00
Jonah Graham
de4a1e7222 Bug 574519: Always collect WSL entries in a Job
Change-Id: I35abec7ca075bf525e972e4cbc03af4361d1d490
2021-07-24 13:46:51 -04:00
Jonah Graham
bcd5dd35bd Fix typo.
Change-Id: I0f4fb95c1a44088d19ae9f98abd98765f456d110
2021-07-09 21:31:21 -04:00
Jonah Graham
83f0b1be05 Bug 574271: Draw characters in the correct color on macos
There is a bug in SWT on macos - Bug 568777 - with the cache of single
character drawStrings with transparent backgrounds as a performance
boost. This causes the terminal to draw some characters in the
wrong color.

The workaround is to not draw with transparency, which should be fine
because we just filled the background with the same color that the
1 character string will draw with.

The performance, measured with TerminalTextUITest in Fast mode with
no throttling, does not seem affected and in my testing there does
not seem to be any graphic side effects.

Change-Id: I1b0aadae100d81a8f4533ba73273ccc8202e068f
2021-06-19 13:50:16 -04:00
Jonah Graham
49d29dc6ae Bug 573797: Use the user selected encoding when intercepting byte stream
Change-Id: Id64ba9218a626d9daec02ef3a7480a67e802b865
2021-06-17 16:03:09 -04:00
Jonah Graham
d465e83836 Bug 573797: Refactor code to use Charset instead of passing around Strings
This simplifies error handling as once you have a Charset you don't
have to worry about whether or not an UnsupportedEncodingException can
be thrown anymore. In addition it is a little easier on type safety.

Change-Id: I4292878a7c621f9d05fdb98f5c26a0ae8bfec062
2021-06-17 16:02:59 -04:00
Jonah Graham
385d302d70 Bug 573797: Always use sendString, regardless of encoding
This removes a TODO in the code that makes no sense, and in
most cases the else branch is not taken as a common operating
mode is the default charset/encoding is windows-1252 but the
current charset is utf-8.

The effective difference between the two branches is that
the else does a flush after character rather than after each
string.

Change-Id: I50b3cc5837d783ba20b88c2efa44d9c4e6381d30
2021-06-17 16:02:27 -04:00
Jonah Graham
27f6637d3f Bug 573796: Warn user if not using UTF-8 on Windows
The PTY, in case of ConPTY, operates always in UTF-8. This is suggested
back to the user with a decorated combo if they try to change the default.

Change-Id: Iaf4c13e256ea7ee3469eecab4a0ec3df1ceb19a4
2021-06-17 15:37:48 -04:00
Jonah Graham
902ea0dfa1 [releng] Bump to CDT version 10.4.0
Change-Id: I0807f46d9ebb8bb579b687366cdb19e40935a9ec
2021-06-12 20:52:54 -04:00
Jonah Graham
261af5106c Bug 573719: Display error on shell open failed
Save shell before disposing control so error message has somewhere to go

Change-Id: I3bcaa0e8f23a8c177309e72b6d9dfbb8afb72cf4
2021-05-24 00:30:58 -04:00
Jonah Graham
f71d92114f Bug 573646: Open primary terminal view when there is no last available
Change-Id: I286d039d6cb3eb1e73fdb5b76c8743a8e0870d94
2021-05-24 00:30:58 -04:00
Jonah Graham
cb89216031 Bug 573712: Populate WSL entries in terminal list like git bash is
Change-Id: I371d5455296e9d1bcb9137e538d5cc2ed5417ba1
2021-05-24 00:30:58 -04:00
Jonah Graham
a4963b35ad Bug 573712: Reduce work done at Eclipse startup time on main thread
In Bug 466650, the git bash detector was removed from startup to reduce
overhead on startup. Later during a rewrite it was added back in under
a different code path for Bug 473107. In the context of Bug 573712
which is going to add more detectors that may do much more work on
a full load, reduce the amount of work needed to do the presence check.

Change-Id: If1ae3f12ec51b1edc2d419f0efd89fed81a7b56e
2021-05-23 20:49:26 -04:00
Jonah Graham
a7fab87648 Bug 573712: Reorganize external tools detection code
The code was not very extensible and the main purpose of the bug
is to add additional detectors. This first commit refactors
the code to make that easier, and to provide a platform for
what could become an extension point.

Change-Id: I5ce514eda11f2573098d6e16663e324954da961b
2021-05-23 20:49:26 -04:00
Jonah Graham
ece07888a8 Bug 573713: Support alternate way of bright escape codes
ConPTY uses 90-107 to indicate bright instead of using extra 1; parameter.

Change-Id: I42263edd5dbe78fe164f00b99d1850ca5be85081
2021-05-23 20:49:26 -04:00
Jonah Graham
4e92239952 Bug 562776: Use Windows ConPTY API instead of WinPTY
There are lots of bugs in WinPTY, while upgrading WinPTY would
resolve some of them, there are others that are unresolvable. See
https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/
for a backgrounder on the general subject.

In this first version ConPTY won't be enabled by default, it requires
system property
org.eclipse.cdt.core.conpty_enabled=true
to be set. i.e. start Eclipse with:
-vmargs -Dorg.eclipse.cdt.core.conpty_enabled=true

In a future version the default will change to on if available,
so to force it off use:
org.eclipse.cdt.core.conpty_enabled=false

Change-Id: Ib2df0095027c23f20daa6aa044d9e5f0b0443164
2021-05-23 20:49:26 -04:00
Jonah Graham
17cabff257 Add missing imports for Javadocs
These imports are only used for Javadocs, which is why it was sort
of ok that they were missing until now.

Change-Id: Ia941ca55c56a101766b709290b40609c20fdda9d
2021-05-19 23:26:40 -04:00
Jonah Graham
e44ef41078 Bug 573646: Restore to correct secondary tab
The handling of ssecondary ids was problematic, special cases were
not well documented and depending on code paths, a secondary ID
of null would mean different things.

This commit fixes that documentation, defines shared constants, and
fixes the logic so secondary id dispayed terminals restore to the
correct location on restart.

Change-Id: Ia87b64f735a37d505e1a5a7b7a4a8e210dfb8c1e
2021-05-19 23:26:07 -04:00
Jonah Graham
df78cd3055 Bug 460495: Save/restore terminal process/args and other settings
Change-Id: Id87d1ade4b58a4abf759c5016dcf4ab24b4b028b
2021-05-19 14:47:53 -04:00
Jonah Graham
a7e14187ea Bug 453696: Save CWD in terminal to restore it
Change-Id: I6a432fcbd40f6b4e991e49ba582b8b9f7cae823e
2021-05-19 12:54:10 -04:00
Fabrizio Iannetti
f13c182df4 Bug 572938 [terminal] reverse linefeed: Honour the scrolling region
The reverse linefeed should scroll down when the cursor is on the
first line of the scrolling region, not only on the first screen
line

Change-Id: I628ab135d48d868bc8e3eacd2ea57dda948873a8
Signed-off-by: Fabrizio Iannetti <fabrizio.iannetti@gmail.com>
2021-05-01 16:25:49 -04:00
Jonah Graham
61d1a02f32 Bug 572938: Tests for scroll reverse
Change-Id: I08a812d9f7847e2fa24dddf0f97efc65cc44d49d
2021-04-23 21:24:45 -04:00
Jonah Graham
b044543451 Bug 573064: Test for full clear - extended "E3" capability
Change-Id: Ic30dac68f870f04808eb9038c2ba61b1da9e983f
2021-04-23 21:24:45 -04:00
Jonah Graham
3e29cd6525 Bug 341721: Test for rename terminal escape sequence
Change-Id: Id03f3d4361d0ac0ac0758c3f00eadbe2d6b568fc
2021-04-23 21:24:45 -04:00
Jonah Graham
a14c962ff2 Bug 573108: Add test harness for VT100Emulator
This contains basic tests so far, as bugs are fixed other tests
can be added here, leading to easier development of escape sequences.

Change-Id: Iadd0b24d400f72927c446d61386f19cfd8bd05a0
2021-04-23 21:24:45 -04:00
Jonah Graham
327026010b Bug 573110: Emulator can spin if Reader is ready but not available
The implementation of the read loop in the emulator can spin because
it uses Reader.ready() to determine if there is more data to read.

However the Reader contract does not specify that ready() means
that read() will return a character, simply it means that read()
won't block. As such, if a Reader won't block, but it has no
characters, the inner read loop will spin constantly polling.

The outer loop uses polling too - but it has a wait so that the
CPU does not hit 100% and yields.

Change-Id: Id9b2426c65e6c2a2c3ae817a78d2be435e568c1f
2021-04-23 21:24:45 -04:00
Jonah Graham
4ef3cb7f30 Bug 573109: Add new logging options for terminal
Change-Id: I0c35b7ce0c4350081eac6ace974dbcee3e0f103d
2021-04-23 21:24:45 -04:00
Jonah Graham
b7d017572d Bug 573109: Use new StackWalker API
Java 9+ contains new API for getting/walking stack frames. It is much
faster and has a much cleaner API than using Throwable.getStackTrace

Change-Id: Id0c888aeb06665f10605ce5ab5f0a567249e068c
2021-04-23 21:24:44 -04:00
Jonah Graham
20f73f9c64 Bug 573121: Remove unneeded dependencies in terminal
To enable the terminal to be built independently of the
rest of CDT, remove these unused dependencies.

AFAICT they may date back to a time when some of the
native code was part of the core?

Change-Id: I61505a2bfc6c85f6c2d6efd9d66ac788018f9e82
2021-04-23 21:24:17 -04:00
Jonah Graham
d3b0dd254a Bug 573121: Allow terminal to be built on its own
Change-Id: I74024d0c247159a1adef767e79ad64ab1bfd14b2
2021-04-23 17:38:34 -04:00
Jonah Graham
6386faff0d Bug 563015: Log exception if process.pid() fails
Change-Id: Ie9888e1e56b19086890caf221f0cbd97eafa817c
2021-04-23 11:21:38 -04:00
Jonah Graham
e033c50e28 Bug 573064: Support full clear - extended "E3" capability
Change-Id: I9d4f7fffb11cc5386eb0a4e5c0445f1fc518b0a5
2021-04-21 15:37:14 -04:00
Fabrizio Iannetti
6dbad0b10e Bug 572938 Terminal: add support for reverse linefeed
Scroll up is not working with `less`, `man`, probably
other programs.

Change-Id: I99d2472ab09df6b79fffbcaa581f3024c44d3ead
Signed-off-by: Fabrizio Iannetti <fabrizio.iannetti@gmail.com>
2021-04-21 15:37:05 -04:00
Fabrizio Iannetti
e6d5c634b9 Bug 563015: terminal: open files/links with ctrl-click
- hover with ctrl+mouse underlines word under cursor
- ctrl-click tries to open the word:
  - if a relative path (not starting with /) a full path is
    obtained by prepending the shell cwd
  - if the fullpath maps to a workspace file, it is opened
  - otherwise open the OpenResource dialog with the word as
    filter text
  - if there is line/column information (separated by colons)
    then the opened editor jumps to that line
- http and https words are opened in a browser window

Change-Id: I3f46accbf1eac6743d7b0c3b34bf30ac5e7523bb
Signed-off-by: Fabrizio Iannetti <fabrizio.iannetti@gmail.com>
Also-by: Jonah Graham <jonah@kichwacoders.com>
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2021-04-12 16:04:07 -04:00