-
Notifications
You must be signed in to change notification settings - Fork 0
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
Split aspen.py into several packages #2
Comments
@Changaco We have If we keep the other language versions around then I think we should stick with the |
I propose |
Yielding:
|
I'm okay with keeping the non-python repos.
|
👍
I think this repo might go away entirely for the time being. On AspenWeb/aspen.py#527 the intention is to inline the remaining plugins into |
|
See https://github.com/AspenWeb/aspen.py/pull/527#issuecomment-170975095. |
Okay. Let's talk about Git history. The Flask and Django repos don't need Aspen's history. On the other hand it's logical for If we're going to have several repos containing Aspen's significant history, should we rewrite it first, removing archives from it to make it lighter? If we want to keep the |
How about:
I'd be fine with Git-LFS. |
It seems weird to me to not have Aspen's history in the new I agree that the first step is to deal with AspenWeb/aspen.py#527, it needs to be rebased on master, and I need to take a real look at what's in it. I think we should take the Django/Flask parts out of it and put those in their own repos. My previous comment was misleadingly worded: I think we should lighten the history in any case. We could do something like this: |
Before or after we land it? @pjz
We're essentially forking the current
Works for me. :) |
... and I were planning to land 527 and then start factoring out additional bits. |
Before. Is there any reason not to do so that I'm missing? It should make the PR easier to review and merge, right? |
Weeeellllll, what we had said is that we didn't want to leave master in an unusable state. Without Flask or Django integration, 527 is unusable. |
Yes, but 527 is going into |
It's easy enough to start a second repo with the history from the first (one direction or another). What we can't fork are the issues and pull requests attached to the current @Changaco After the |
I thought about that too but forgot to mention it. I think we should create |
@Changaco The issue seems to be that the PR that turns |
Right, but we don't have to actually merge it in |
Okay, makes sense. 👍 |
We should rewrite the history before pushing the new repo though. |
So let's keep working on 527 as if we were going to merge it, but when the time comes we'll do the history rewrite instead, push the rewritten |
We don't need a |
@Changaco If weren't not drastically changing our vendoring habits, then I think we do. It's still used in 527, at least. |
Vendoring policy reticketed as #4. |
The reason this hasn't moved forward is #4 (and also because I've been busy on Liberapay). Can I get an answer over there on why exactly we vendor dependencies? It's hard to figure out the right solution when the problem is unclear. |
I've rewritten the history to erase the Next step: push the django and flask shims. |
!m @Changaco |
FTR, the |
!m @whit537 too, the |
:-) |
I've split the work on shims from 527 in two, and pushed that into the new repos. Next step is to complete them. Shall the license of the shims be MIT like Aspen? (Personally I've been switching my projects to CC0.) |
CC isn't meant for software. I vote for GPL but will concede to MIT or Apache if it's what you guys want. |
Oh, hunh, looks like CC0 is okay for software since it's essentially a formal way of saying 'public domain'. I'd still vote for GPL, but will go CC0 if you feel strongly that GPL (or LGPL) is the wrong thing. |
I'm -1 on GPL because I don't care for legal activism. Saying "public domain" is complicated in Germany and Austria (at least). Over in Gratipay we can get away with it for I prefer MIT to LGPL because it does everything we need it to do, in ~2.6% of the size (NB: the LGPL is an addendum to the GPL).
|
Sounds like MIT is the consensus. |
I have no specific knowledge of German copyright law, but I suspect it's similar to French one. As far as I know it's impossible to put your work in the public domain in either country, but CC0 already takes care of that: its legal code contains a license fallback. The reason I ditched the (L)GPL is that people kept asking me to include the full text of the license everywhere (in Git, in PyPI packages, etc), and they're right that the GPL does require that, so I switched to a license that doesn't. Aspen's MIT license also requires including the copyright notice everywhere, and we don't fully respect that: we don't include it in PyPI packages. That being said, I am okay to stick with the MIT license for Aspen projects if you guys prefer it to CC0. Quite frankly I'm tired of both copyright and copyleft, they just seem to be wasting everyone's time. |
Agreed, and we're not the only ones. ;-) I think our goal is to do the least amount of work that will get the largest percentage of people to not bug us about licensing.
Huh, okay. I haven't heard that request before. https://github.com/AspenWeb/aspen.py/pull/550 should solve this for PyPI. What's the "etc"? |
Nothing yet, I just meant there could be others. |
Agreed, and for aspen.py and aspen-core.py the least amount of work is to keep the MIT license. On the other hand the shims are new packages and we can easily give them a CC0 license if we want, which would save us from having to bundle the license text in these projects. |
I think our best bet is to use MIT for everything:
|
Okay, MIT it is then. |
I've just pushed AspenWeb/aspen.py#1. I'm going to sleep now. |
!m @Changaco |
So, reading this diff, I really don't like the module name of 'aspen_core'. Why not just 'aspen' ? And make the aspen.py be 'aspen_web' ? |
@Changaco at AspenWeb/aspen.py#1 (comment):
|
We decided over on AspenWeb/aspen.py#1 to actually go with Aspen for the core library, and Pando for the standalone framework. Todo (copied from AspenWeb/aspen.py#1 (comment)):
|
That's looking at it from the inside out. From the outside in, "Aspen" is the brand attached to the idea of filesystem web routing in Python. How we carve that up under the hood is another matter. |
A filesystem router could dispatch to python files, or to templates, or to a mixed format other than |
Background: AspenWeb/pando.py#526, AspenWeb/pando.py#527, and #1.
Let's recap. As I see it the plan is:
aspen
—standalone web frameworkFlask-Aspen
—Flask integrationdjango-aspen
—Django integrationaspen-core
—common code for the three above, depends on the two belowaspen-(dispatcher|fs-routing)
—filesystem dispatcher/routersimplates
The text was updated successfully, but these errors were encountered: