Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Development Roadmap #739

Open
4 of 8 tasks
fran-worley opened this issue Apr 7, 2020 · 41 comments
Open
4 of 8 tasks

Development Roadmap #739

fran-worley opened this issue Apr 7, 2020 · 41 comments

Comments

@fran-worley
Copy link
Contributor

fran-worley commented Apr 7, 2020

Development Roadmap
We're aware that development for this addon has been a little slow recently so here's a little update on the planned development roadmap.

v2
Version v2.0.0 will provide deprecation free support for ember v3.6 - v3.20 with basic angle bracket syntax support.

v3
Version v3.0.0 will be optimised for Ember Octane so will only be suitable for Ember v3.12+

  • Drop support for ember versions <3.12 (possibly higher depending on the features we need).
  • Drop support for curly bracket syntax (this will introduce breaking changes to template APIs)
  • Convert internals to native classes and use glimmer components if/ where possible.
  • Publish updated docs for v3

For those who have taken the time to create PRs over the last year+, thank you and sorry that we've not had a chance to get as many merged as we would have liked. Once we've finished the key work outlined above we can begin looking to add features and fix long standing bugs again.

@alexander-alvarez
Copy link
Collaborator

Sounds like a great idea. Did we ever get your publish rights?

@fran-worley
Copy link
Contributor Author

I don't think so. Let me check ruby gems

@fran-worley
Copy link
Contributor Author

@alexander-alvarez I've just checked ruby-gems and I don't have rights - can you give them to me?

@alexander-alvarez
Copy link
Collaborator

what's your npm username?

@fran-worley
Copy link
Contributor Author

fworley - just created an account!

@Gorzas
Copy link
Contributor

Gorzas commented Apr 20, 2020

@fran-worley Can I help with the roadmap of ember-light-table?

@fran-worley
Copy link
Contributor Author

@Gorzas yes please!! If we can fix the failing tests on the 2.x branch for ember 3.4 we can do a full release of 2.0.0.

Otherwise do you want to start a v3 branch (off V2.x and start on octane optimising? We can begin with basic admin - dropping support for earlier versions of ember, converting to native classes with decorators etc. Then we should start a new issue to review the component API as it will need to change to enable us to make best use of angle bracket syntax.

@Gorzas
Copy link
Contributor

Gorzas commented Apr 20, 2020

Ok, I'm going to take a look on this failing tests first :).

@Gorzas
Copy link
Contributor

Gorzas commented Apr 28, 2020

@fran-worley I've been debugging the problem with ember-viewport. It seems that, with a different Ember version, it uses a different resolver. Don't know if it's really a problem with Ember-viewport but it doesn't seem it. No clue how to fix it right now, I'm going to keep seeking a solution to this problem.

@fran-worley
Copy link
Contributor Author

@Gorzas any chance you could throw up a reproduction app in 3.4 with ELT at 2.x branch and see if it still happens? If not I'm happy to release beta6 on the basis the issue is with our test environment and not ELT or InViewport.
We can then work on an internal fix in our own time.

@Gorzas
Copy link
Contributor

Gorzas commented Apr 28, 2020

Ok, I'll try it tomorrow, I may have a couple of free hours to do it.

Meanwhile, I've been redirected to this issue but I still don't know the differences between the different Ember Resolvers or where are they use it.

@Gorzas
Copy link
Contributor

Gorzas commented May 6, 2020

@fran-worley I tried it with the dummy app and it doesn't work. Let me take this some more time if I can fix it. Sorry I couldn't try it before 😅 .

@Gorzas
Copy link
Contributor

Gorzas commented Jun 16, 2020

How do you see dropping the support to older versions of Ember? I've spent a lot of time debugging the addon and I still don't see how to fix the problem. I've seen that the version we use of ember-in-viewport uses v3.12 and we want to be compatible with v3.4. What do you think? People with older versions of Ember will have v1.x.

@fran-worley
Copy link
Contributor Author

@Gorzas let's drop it. I've seen plenty of addons which have done far more brutal version support culls recently in the interest of progress.

Gorzas added a commit to Gorzas/ember-light-table that referenced this issue Jun 18, 2020
@Gorzas
Copy link
Contributor

Gorzas commented Jun 18, 2020

I've created a PR with the changes. It also drops support for Ember 3.5 :(.

@corrspt
Copy link
Contributor

corrspt commented Jul 27, 2020

Hey

I'm not entirely sure I can be of help, but I'm using Light Table 2.0.0-beta 4 and having trouble upgrading to Ember 3.16 (I'm on 3.13, making my way to 3.15) and Light table is causing the errors starting with 3.16. Anyone using light table with 3.16+?

I'd like to contribute if possible (even if just making things run with 3.16)

@maxwondercorn
Copy link
Collaborator

@corrspt I'm using ELT with 3.16 with Ember components, not glimmer components. You might want to open an issue with the errors you are seeing or ask in tables topic in the Discord server

fran-worley pushed a commit that referenced this issue Jul 29, 2020
fran-worley pushed a commit that referenced this issue Jul 29, 2020
@Gorzas
Copy link
Contributor

Gorzas commented Aug 4, 2020

@fran-worley I've seen that some checks have failed, is there anything I should look out?

Let me know what else it's needed to release version 2.0 😄 .

@corrspt
Copy link
Contributor

corrspt commented Aug 4, 2020

@maxwondercorn thanks for the comment. In my next upgrade window (soon I hope) I'll do just that

@fran-worley
Copy link
Contributor Author

@Gorzas I have no idea what the problem is with V2... it got very late...

I think I just need to revert back to before I started looking at it and then release with updated docs. I suggest anyone on ember >3.16 uses the new 3.x branch

@Gorzas
Copy link
Contributor

Gorzas commented Nov 12, 2020

I have time to give some attention to the library. You were talking about going directly to version 3.x with `ember-light-tablè, am I right?

I'm going to do some PRs this pair of weeks in case I can be of any help.

@fran-worley
Copy link
Contributor Author

That would be awesome @Gorzas . I can't see the point in fixing random failing tests with old versions of ember when most addons have dropped support anyway.

@RobbieTheWagner
Copy link
Member

@fran-worley @Gorzas what's the status on the 2-x and 3-x branches? Can we get all the latest stuff merged into master? I think we should stop supporting older Ember versions and just get all the new stuff in, so we can continue to move forward.

@Gorzas
Copy link
Contributor

Gorzas commented Dec 28, 2020

@rwwagner90 I think the version 2-x has been rejected as it has arrived too late. Lately, I've been using the current beta 3-x without having problems. It needs a migration to Octane and start using native classes to finish the release. I don't know if it also requires some docs update.

@RobbieTheWagner
Copy link
Member

@Gorzas what do you mean it arrived too late? I just want to get all the latest and best changes into master, we shouldn't have all these different branches.

@Gorzas
Copy link
Contributor

Gorzas commented Dec 28, 2020

@rwwagner90 I mean that it already exists a working version 3, so I think the 2-x version could be avoided. I don't know if there are commits in the branch that aren't in the 3-x branch.

@RobbieTheWagner
Copy link
Member

@Gorzas gotcha. Who would best know the status of things? @fran-worley do you know if we could just merge 3-x into master and delete 2-x?

@maxwondercorn
Copy link
Collaborator

Looking through the history, 3-x is branched from 2-x. The first commit was 91a4fa4

@RobbieTheWagner
Copy link
Member

Would love to hear from some folks who created the 2-x and 3-x branches to make sure basically replacing master with one of them is okay.

@maxwondercorn
Copy link
Collaborator

@fran-worley @Gorzas @alexander-alvarez anyone? see ^^^^^^

@RobbieTheWagner
Copy link
Member

If we don't hear from anyone, I think I'll likely just merge 3-x into master and delete 2-x and 3-x branches so we can move forward on this project.

@fran-worley
Copy link
Contributor Author

@rwwagner90 merge away, my time was always going to be very limited on this and I felt awkward making decisions without support from longer standing maintainers.

Given how far ember has moved on, my preference would be to set version 3 as minimum of v3.20. If I can help do let me know but as I say, my time is quite limited.

RobbieTheWagner added a commit that referenced this issue Feb 9, 2021
* replace `sendAction` with modern callable methods

* make easy jquery fixes

* Release v2.0.0-beta.0

* Release v2.0.0-beta.1

* removed jquery

* yarn upgrade

* Update ember-scrollable

* Assert and Test compatibility with LTS 3.4

* Officially drop support for node 4 in package.json

* bump vertical-collection to v1.0.0-beta.13

* Replace merge with assign (#673)

* bump vertical-collection to v1.0.0-beta.13

* replace merge with assign

* ensure ember-scrollable updates when rows are updated (#677)

* refactor: Remove sendAction() calls (#686)

* release 2.0.0-beta.3

* Replace propertyWillChange/propertyDidChange with notifyPropertyChange and add polyfill for < Ember 3.1 (#692)

Fixes #660

* update changelog for 2.x

* Update ember-in-viewport, ember-wormhole, move ember-composable-helpers to devDependencies (#693)

* move ember composable helpers to dev dependencies and bump version  see #524

* bump ember wormhole

* add ember lts 3.8 to travis

* remove ember-native-dom-helpers testing add-on

* update multiple table test from 1-x branch to remove native-dom-helpers add-on

* [breaking] rename inViewport closure action to enterViewport

paving the way to update ember-in-viewport dependency

* fixes infinite loop on onScrolledToBottom

* remove unused rows property from lt-infinity

* bump ember-in-viewport version and refactor lt-infinity component not to use mixin

* make lt-body.inViewport event deprecated in favour of enterViewport and test

* Drop node 6 support as end of line Apr 2019 (#698)

LGTM! Node 8 it latest Maintenance LTS and will be EOL in December

* Bump Ember CLI to 3.8 and update other dependencies (#696)

* bump ember cli to lts 3.8 update other dev dependencies

also apply some ember add-on blueprint changes

* fix handlebar lint errors

Note - unsure why 'no-inline-styles' config isn’t being applied. For now I’ve manually disabled the rule in applicable templates

* disable js no-observer rule

* update eslint-plugin-ember-suave and fix lint errors

* upgrade ember-mirage (used for dummy app)

* upgrade remaining addons

* set minimum supported ember version at 2.18 (#700)

see community survey results - https://emberjs.com/ember-community-survey-2019/

* migrate to using lerna-changelog (#697)

* update changelog [ci skip]

* BREAKING drop support for ember 2.18 (#713)

* [BREAKING] drop support for ember 2.18

* fix travis - ember release can fail

* as we use the compute helper we need to restore ember-composable-helpers as a dependency (#714)

* [BREAKING] fixes #444 #662 converts ES6 native classes to ember objects (#701)

This is a breaking change as it converts the new Class() syntax to Class.create().
In addition, the only way I could get these to work was to convert the positional arguments to named args in an options hashes:

`new Table(columns, rows)` => `Table.create(columns: columns, rows: rows)`
`new Row(content, options)` => `Row.create({ content: })`
`new Column(opts)` => `Column.create(opts)`

We’ve had to replace the native constructor methods with emberObject init methods as per the official docs which should also fix #699. As a result we’ve removed the Ember 2.12 ‘hacks’ which shouldn’t be an issue as we’ve bumped ember version minimum version to 2.18.

* Bump to ember cli 3.12 and update dependencies (#716)

* bump addons

* update ember cli to 3.12

* drop ember-release from allowed travis failures

* use yarn not npm and remove unused ember-cli-changelog

* update ember changelog

* [ci skip] fix dummy app port following update to ember cli 3.12

see ember-cli/ember-cli#8794

* release v2.0.0-beta.4

* [ci-skip] update changelog for beta 4 release

* replace volatile computed properties with native getters (#718)

* Add a guard to check if scaffolding cells exist

* Always render scaffolding row in table header

* Test lt-scaffolding-row

* Update ember-scrollable version to jquery-less

* bump ember-code-snippet for dummy app

* update travis to include recent LTS versions of ember

* fix lint issues

* bump ember cli to 3.16.1 and fix/ warn easy js lint errors disable other rules

* bump dependency addons

* [ci skip] bump changelog and yuidoc addons

* [ci-skip] update changelog

* fix deprecation warning for overridden rowspan cp

* remove unsafe style attribute warnings

* make compute own helper then drop ember-composable-helpers as dependency

* Remove debugging line in compute helper

* Drop support to Ember 3.4 and 3.5

Related #739

* add testing for ember 3.20

* bump addons

* drop ember-suave eslint to fix travis

# Conflicts:
#	package.json
#	yarn.lock

* [ci-skip] update ember version in readme

* v3.16.1...v3.20.0

* drop support for ember <3.12

* drop this.get

Co-authored-by: Donald Wasserman <[email protected]>
Co-authored-by: Alex Alvarez <[email protected]>
Co-authored-by: Gaurav Munjal <[email protected]>
Co-authored-by: Fran Worley <[email protected]>
Co-authored-by: Michal Bryxí <[email protected]>
Co-authored-by: mmadsen2 <[email protected]>
Co-authored-by: Tomasz Węgrzyn <[email protected]>
Co-authored-by: Richard Viney <[email protected]>
Co-authored-by: gorzas <[email protected]>
@RobbieTheWagner
Copy link
Member

@fran-worley I just merged 3-x into master. Is there anything from the 2-x branch that is not in 3-x or can I safely delete the 2-x branch?

@fran-worley
Copy link
Contributor Author

Hi @rwwagner90 you're safe to delete 2-x.

I think I still have npm rights if you need me to ship a new release.

probably worth someone with the time to clear out the open pull requests and asking people to rebase and reopen if they want them considered.

@fran-worley
Copy link
Contributor Author

Would also be great to get new docs release out - sadly I have never done this and have no idea how!

@Gorzas
Copy link
Contributor

Gorzas commented Feb 10, 2021

@fran-worley What changes do we need for the docs? Do you mean about changing the handlebars to angle bracket syntax?

@maxwondercorn
Copy link
Collaborator

@Gorzas Besides syntax changes the dummy app should not migrate from mixins as they don't fit in the Octane world. We use a base class with inheritance for our tables but there are other options. Good discussion here on options

@Gorzas
Copy link
Contributor

Gorzas commented Feb 22, 2021

I see @maxwondercorn, I really don't know what's the best alternative to mixins. Right now, I'm helping in whatever I can. If any of you could take a look to this issue, I'll be happy to continue updating the blueprints 😄.

@maxwondercorn
Copy link
Collaborator

@fran-worley @Gorzas

I realize everyone is in a different place, has moved on or is doing something else since the pandemic 😱 so I'd like to start working on moving ELT forward again.

I have some bandwidth now and already created a PR #775 to merge your post 2..0.0-beta.5 work (origin/fw/update-dummy-app and 3.0.0-beta.0) into master. Apologies in advance...

Per the conversation in this issue, I think there shouldn't be any more effort on a v2 release.

While the beta.5 doesn't have updated documentation and some issues (with work arounds), it does work in at least Ember source 3.26 and is embroider compatible. The first Ember 4 LTS version is near and we should target v3 for compatibility.

For completeness maybe release v2.0.0-beta.5 as v2 with the caveat that v3 is being worked on. 🤷 After #775 is merged, I can work on getting another v3 beta release.

cc: @rwwagner90

@Gorzas
Copy link
Contributor

Gorzas commented Jul 6, 2022

@maxwondercorn I still work with Ember framework but I'm not currently working with ember-light-table library. Anyway, if you need any help, I can take a look. Is there anything I could be testing or any code to review?

@maxwondercorn
Copy link
Collaborator

@Gorzas Thanks. IIRC you couldn't get all tests passing on 3.12, so minimum supported would be Ember source 3.13? My testing confirmed that but wanted to verify it.

3.13 would also be required for converted to colocated Glimmer components. ATM, nothing to review but once this get's merged I'm sure there will be something 😄

RobbieTheWagner added a commit that referenced this issue Jul 8, 2022
* replace `sendAction` with modern callable methods

* make easy jquery fixes

* Release v2.0.0-beta.0

* Release v2.0.0-beta.1

* removed jquery

* yarn upgrade

* Update ember-scrollable

* Assert and Test compatibility with LTS 3.4

* Officially drop support for node 4 in package.json

* bump vertical-collection to v1.0.0-beta.13

* Replace merge with assign (#673)

* bump vertical-collection to v1.0.0-beta.13

* replace merge with assign

* ensure ember-scrollable updates when rows are updated (#677)

* refactor: Remove sendAction() calls (#686)

* release 2.0.0-beta.3

* Replace propertyWillChange/propertyDidChange with notifyPropertyChange and add polyfill for < Ember 3.1 (#692)

Fixes #660

* update changelog for 2.x

* Update ember-in-viewport, ember-wormhole, move ember-composable-helpers to devDependencies (#693)

* move ember composable helpers to dev dependencies and bump version  see #524

* bump ember wormhole

* add ember lts 3.8 to travis

* remove ember-native-dom-helpers testing add-on

* update multiple table test from 1-x branch to remove native-dom-helpers add-on

* [breaking] rename inViewport closure action to enterViewport

paving the way to update ember-in-viewport dependency

* fixes infinite loop on onScrolledToBottom

* remove unused rows property from lt-infinity

* bump ember-in-viewport version and refactor lt-infinity component not to use mixin

* make lt-body.inViewport event deprecated in favour of enterViewport and test

* Drop node 6 support as end of line Apr 2019 (#698)

LGTM! Node 8 it latest Maintenance LTS and will be EOL in December

* Bump Ember CLI to 3.8 and update other dependencies (#696)

* bump ember cli to lts 3.8 update other dev dependencies

also apply some ember add-on blueprint changes

* fix handlebar lint errors

Note - unsure why 'no-inline-styles' config isn’t being applied. For now I’ve manually disabled the rule in applicable templates

* disable js no-observer rule

* update eslint-plugin-ember-suave and fix lint errors

* upgrade ember-mirage (used for dummy app)

* upgrade remaining addons

* set minimum supported ember version at 2.18 (#700)

see community survey results - https://emberjs.com/ember-community-survey-2019/

* migrate to using lerna-changelog (#697)

* update changelog [ci skip]

* BREAKING drop support for ember 2.18 (#713)

* [BREAKING] drop support for ember 2.18

* fix travis - ember release can fail

* as we use the compute helper we need to restore ember-composable-helpers as a dependency (#714)

* [BREAKING] fixes #444 #662 converts ES6 native classes to ember objects (#701)

This is a breaking change as it converts the new Class() syntax to Class.create().
In addition, the only way I could get these to work was to convert the positional arguments to named args in an options hashes:

`new Table(columns, rows)` => `Table.create(columns: columns, rows: rows)`
`new Row(content, options)` => `Row.create({ content: })`
`new Column(opts)` => `Column.create(opts)`

We’ve had to replace the native constructor methods with emberObject init methods as per the official docs which should also fix #699. As a result we’ve removed the Ember 2.12 ‘hacks’ which shouldn’t be an issue as we’ve bumped ember version minimum version to 2.18.

* Bump to ember cli 3.12 and update dependencies (#716)

* bump addons

* update ember cli to 3.12

* drop ember-release from allowed travis failures

* use yarn not npm and remove unused ember-cli-changelog

* update ember changelog

* [ci skip] fix dummy app port following update to ember cli 3.12

see ember-cli/ember-cli#8794

* release v2.0.0-beta.4

* [ci-skip] update changelog for beta 4 release

* replace volatile computed properties with native getters (#718)

* Add a guard to check if scaffolding cells exist

* Always render scaffolding row in table header

* Test lt-scaffolding-row

* Update ember-scrollable version to jquery-less

* bump ember-code-snippet for dummy app

* update travis to include recent LTS versions of ember

* fix lint issues

* bump ember cli to 3.16.1 and fix/ warn easy js lint errors disable other rules

* bump dependency addons

* [ci skip] bump changelog and yuidoc addons

* [ci-skip] update changelog

* fix deprecation warning for overridden rowspan cp

* remove unsafe style attribute warnings

* make compute own helper then drop ember-composable-helpers as dependency

* Remove debugging line in compute helper

* Drop support to Ember 3.4 and 3.5

Related #739

* add testing for ember 3.20

* correct travis

* bump addons

* v3.16.1...v3.20.0

* bump ember version to 3.20

* fix travis.yml

* fix eslintrc

* replace one-way-controls with ember-power-select and ember input

* convert to angle bracket syntax

* fix ember data deprecations

* fix ember-power-select commit

* replace actions for fn/on non shared table

* replace table-shared mixin with base-table component

* convert action to fn for base-table actions

* replace remainder of action with on/fn

* bump dummy app addons

* Drop support to Ember 3.4 and 3.5

Related #739

* add testing for ember 3.20

* bump addons

* drop ember-suave eslint to fix travis

# Conflicts:
#	package.json
#	yarn.lock

* [ci-skip] update ember version in readme

* v3.16.1...v3.20.0

* drop support for ember <3.12

* drop this.get

* Released 3.0.0-beta.0

* ci: Add github actions with embroider test scenarios

* build: Drop Ember 3.12 support

BREAKING CHANGE: Dropped support for Ember 3.12

* Node 12

* fix: Fix linting errors

* ci: Allow embroider tests to fail

Tests pass locally but not in when running with GitHub actions

* docs: Remove Embroider safe and optimized from readme

CI fails in GitHub actions

* fix: Change to @faker/fakerjs to fix missing avatars

* Revert "fix: Change to @faker/fakerjs to fix missing avatars"

@faker/fakerjs requires Node 14. This reverts commit 81ba515.

Co-authored-by: Donald Wasserman <[email protected]>
Co-authored-by: Alex Alvarez <[email protected]>
Co-authored-by: Gaurav Munjal <[email protected]>
Co-authored-by: Fran Worley <[email protected]>
Co-authored-by: Michal Bryxí <[email protected]>
Co-authored-by: mmadsen2 <[email protected]>
Co-authored-by: Tomasz Węgrzyn <[email protected]>
Co-authored-by: Richard Viney <[email protected]>
Co-authored-by: gorzas <[email protected]>
Co-authored-by: maxwondercorn <[email protected]>
Co-authored-by: Robert Wagner <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants