Commit Graph

53 Commits

Author SHA1 Message Date
a-kenji
edac2eb5a9
add(ci/makefile): run clippy on all features (#1479)
Run clippy on all exposed features, to minimize the possiblility
of breakage.
2022-06-10 12:21:01 +02:00
a-kenji
d62e6fb57e
add(plugin): compact-bar & compact layout (#1450)
* add(plugin): `compact-bar` & `compact` layout

* add(nix): `compact-bar` plugin

* add(config): `compact-bar` to the config

* add(workspace): `compact-bar` to workspace members

* add(assets): `compact-bar`

* chore(fmt): rustfmt

* add(nix): add `compact-bar`

* add: compact layout to dump command

* nix(build): fix destination of copy command

* add(makefile): add `compact-bar` to `plugin-build`

* add(layout): `compact-bar` to layout

* add: install `compact-bar` plugin

* fix(test): update input plugin test

* fix(plugin): default colors for compact-bar
2022-06-03 11:14:38 +02:00
Aram Drevekenin
3a2fee601a chore(package): patch version 2022-04-13 18:46:00 +02:00
a-kenji
fb1880e162
fix: release tagging (#1223)
Switch from "lightweight" tags to "annotated" tags for releases,
since "lightweight" tags are meant for private or temporary object
labels.

`man git tag`:

```
Tag objects (created with -a, -s, or -u) are called "annotated" tags; they contain a creation date, the
tagger name and e-mail, a tagging message, and an optional GnuPG signature. Whereas a "lightweight" tag is
simply a name for an object (usually a commit object).
Annotated tags are meant for release while lightweight tags are meant for private or temporary object
labels. For this reason, some git commands for naming objects (like git describe) will ignore lightweight
tags by default.
```
2022-03-16 11:10:33 +01:00
Thomas Linford
3765aa3483
fix(tests): ensure e2e tests use updated plugins (#1047)
* launch zellij with --data-dir flag in e2e tests, to avoid using prebuilt
  plugins from assets dir, and instead use the ones from the docker
  mount.
* make the tests use plugins built in release mode to avoid some test
  failures due to timing issues.
* format Makefile.toml.
* set uid 1001 to in e2e action (thanks to https://github.com/francisfuzz/actions-uid-gid)
2022-02-27 22:05:37 +01:00
Aram Drevekenin
477ad9e1a6 chore(build): fix publishing flow 2022-01-05 10:34:29 +01:00
danieleades
a62a23a1c7
fix(clippy): ensure clippy runs on all targets (#972)
* ensure clippy runs on all targets

* use 'AtomicBool' instead of 'Mutex<bool>'

* remove unused import

* remove 'mem::drop' no-ops

* remove loop that never loops
2021-12-29 09:16:54 +01:00
a-kenji
f74af9c7bf
fix(makefile): update update-default-config (#751)
- switch the `update-default-config` task to be prior to commiting
  changes
2021-09-30 09:30:59 +02:00
a-kenji
7ab0e39931
fix(makefile): build-plugins on building dev-dir (#750)
- add building plugins `build-plugins` as a dependency for the task
  `build-dev-data-dir`
2021-09-30 09:15:47 +02:00
Aram Drevekenin
5c54bf18c2
feat(sessions): mirrored sessions (#740)
* feat(sessions): mirrored sessions

* fix(tests): input units

* style(fmt): make rustfmt happy

* fix(tests): make mirrored sessions e2e test more robust

* refactor(sessions): remove force attach

* style(fmt): rustfmtify

* docs(changelog): update change

* fix(e2e): retry on all errors
2021-09-27 11:29:13 +02:00
a-kenji
8cf93d8e81
feature(release): Copy default config to the examples folder on release (#736)
fixes #733
2021-09-21 17:16:41 +02:00
Aram Drevekenin
e993a23a85 chore(release): v0.16.0 2021-08-31 10:00:26 +02:00
Brooks Rady
a51f500c17
fix(ui): change resize binding to Ctrl-n
* fix(ui): change resize binding to Ctrl-n

* Fix tests?

* Actually update the keybind in tests

* Cowardly refuse to fix the E2E testing issue
2021-08-30 18:02:14 +01:00
Brooks Rady
76a5bc8a05
feat(ui): overhauled resize and layout systems
* refactor(panes): move to parametric pane sizes

* Fixed the simpler errors by casting to usize

* The least I can do is pass the formatting check...

* Move to stable toolchain

* Well, it compiles?

* And now it doesn't! ;)

* Baseline functionality with the new Dimension type

* Working POC for percent-based resizing

* REVERT THIS COMMIT – DELETES TESTS

* Perfected the discrete resize algorithm

* Fixed fixed-size panes

* Basic bidirectional resize

* feat(resize): finalised parametric resize algorithm

* Reduce the logging level a bit

* Fixed nested layouts using percents

* Bug squishing for implicit sizing

* Here is a funky (read: rubbish) rounding approach

* And now it's gone again!

* Improve discretisation algorithm to fix rounding errors

* Fix the last layout bug (maybe?)

* Mixed explicit and implied percents work now

* Let's pretend that didn't happen...

* Make things a bit less crashy

* Crash slightly more for now (to find bugs)

* Manaually splitting of panes works now

* Start moving to percent-based resizes

* Everything but fullscreen seems to be working

* Fix compilatation errors

* Culled a massive amount of border code

* Why not pause to please rustfmt?

* Turns out I was still missing a few tests...

* Bringing back even more tests!

* Fix tests and pane boarders

* Fix the resize system without gaps

* Fix content offset

* Fixed a bug with pane closing

* Add a hack to fix setting of the viewport

* Fix toggling between shared borders and frames

* fix(tests): make e2e properly use PaneGeom

* style(fmt): make rustfmt happy

* Revert unintentional rounding of borders

* Purge some old borderless stuff

* Fix busted tab-bar shrinking

* Update E2E tests

* Finish implementing fullscreen!

* Don't crash anymore?

* Fix (almost) all tests

* Fix a lack of tab-stops

* All tests passing

* I really can't be bothered to debug a CI issue

* Tie up loose ends

* Knock out some lingering FIXMEs

* Continue to clean things up

* Change some naming and address FIXMEs

* Cull more code + FIXMEs

* Refactor of the resize system + polish

* Only draw frames when absolutely necessary

* Fix the tab-bar crash

* Fix rendering of boarders on reattach

* Fix resizing at small pane sizes

* Deduplicate code in the layout system

* Update tab-bar WASM

* Fixed the pinching of panes during resize

* Unexpose needlessly public type

* Add back a lost test

* Re-add tab tests and get them to compile

* All tabs need layouts

* Start fixing tests + bug in main

* Stabilize the resize algorithm rounding

* All tests from main are now passing

* Cull more dead code
2021-08-28 17:46:24 +01:00
Brooks J Rady
d097c521ac chore(release): v0.15.0 2021-07-19 20:27:58 +01:00
Aram Drevekenin
2e0e22cdb4 chore(release): v0.14.0 2021-07-05 10:13:46 +02:00
Aram Drevekenin
3313634fe9
Add e2e tests (#582)
* feature(tests): e2e tests

* chore(build): github action

* chore(build): fix workflow

* chore(build): fix workflow

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* work

* working

* working

* working

* bring back the proper errors

* make e2e flow run properly

* style(fmt): make rustfmt happy

* style(fmt): make rustfmt happy

* run on everything just to test the workflow

* bring back running behaviour on workflow
2021-06-21 10:45:18 +02:00
a-kenji
dc8487cb4f Fix missing layout-dir in makefile
The `layout-dir` got removed, but the
make action depended on the `dir`.
2021-06-17 16:45:04 +02:00
Brooks J Rady
65574eea5d fix(build): better tested publishing flow 2021-06-03 21:58:02 +01:00
Brooks J Rady
d6a8daba84 fix(build): allow crates.io to update between crate uploads 2021-06-03 20:43:20 +01:00
Aram Drevekenin
5b0ac7b3c4 chore(release): v0.12.0 2021-05-27 14:15:24 +02:00
Aram Drevekenin
1e5c688ed9 chore(build): update makefile 2021-05-27 09:35:58 +02:00
Kunal Mohan
6755b6a88d hotfix(build): Fix cargo make install 2021-05-24 18:44:48 +05:30
Kunal Mohan
1933310626 Allow passing arguments to test and build commands 2021-05-22 22:54:00 +05:30
Kunal Mohan
62d0901bbd Revert changes to Makefile.toml and build without --all-features 2021-05-16 22:03:44 +05:30
Kunal Mohan
2038947a14 Big refactor: separate crates for client, server and utilities 2021-05-16 21:41:56 +05:30
Brooks J Rady
f1bff237a4 feat(build): incorporate git committing and tagging into the publish process 2021-05-14 11:41:00 +01:00
Brooks J Rady
b835594bf2 fix(build): fix an unintuitive operator precedence breaking plugin updating 2021-05-14 11:07:45 +01:00
henil
23450a708c fix(build): Make sure assets/man folder exists before building
manpage.
2021-05-07 10:27:45 +05:30
a-kenji
bee1082b4a
Merge pull request #455 from Adhalianna/main
Add a manpage to Zellij
2021-05-05 22:22:10 +02:00
NKGoc
b504a5379e auto install mandown if it's not there (tested with Manjaro repositories) 2021-05-05 14:16:53 +02:00
NKGoc
67a0a8dc3b Merge branch 'main' of https://github.com/Adhalianna/zellij 2021-05-05 13:21:17 +02:00
NKGoc
0003f8268f new tasks to install mandown and generate manpage 2021-05-05 13:20:26 +02:00
NKGoc
b70d73a581 new tasks to install mandown and generate manpage 2021-05-05 13:16:58 +02:00
NKGoc
0ab7a51d04 simplifications 2021-05-05 12:05:05 +02:00
Brooks J Rady
6e5600efc8 chore(plugin): shuffle helper library names and versions 2021-05-04 23:31:30 +01:00
NKGoc
ba99c379cc typo fix 2021-05-04 21:06:48 +02:00
NKGoc
4ebf0c8c44 remove description added when making sense out of cargo make 2021-05-04 20:53:23 +02:00
NKGoc
00d064e349 add manpage to zellij 2021-05-04 20:50:27 +02:00
denis
56cf446275 chore: added zellij-tile-extra, moved macros from zellij-tile 2021-05-02 12:57:48 +03:00
Brooks J Rady
65f15457c1 fix(build): don't store binary assets in git 2021-04-29 15:53:10 +01:00
Brooks J Rady
afefa82f47 fix(ci): fix cross compiliation 2021-04-26 23:33:53 +01:00
Brooks J Rady
fee999ec40 fix(naming): made plugin terminology more consistent 2021-04-19 23:37:47 +01:00
Brooks J Rady
c4a7566e28 feat(build): update makefile to support ci releasing 2021-04-19 19:22:37 +01:00
Brooks J Rady
79a053f807 fix(build): return a clearer message on install failure 2021-04-16 16:50:35 +01:00
Brooks J Rady
7ab5b0e80f fix(build): tweak the publishing process 2021-04-14 19:26:12 +01:00
Brooks J Rady
af702b67e6 feat(build): vastly simplify the build system 2021-04-14 19:08:22 +01:00
Brooks J Rady
2dd8d817bb feat(build): allow arguments to be passed to Zellij 2021-04-14 16:36:02 +01:00
Brooks J Rady
6f4dcfbf65 fix(clippy): get ci passing again 2021-04-13 18:14:13 +01:00
Brooks J Rady
dcd03ddc85 First iteration of the new build system is complete 2021-04-13 15:35:37 +01:00